Am 21. März 2022 13:06:29 UTC schrieb "Philippe Mathieu-Daudé" <philippe.mathieu.da...@gmail.com>: >On 21/3/22 11:57, Bernhard Beschow wrote: >> Am 1. März 2022 22:52:19 UTC schrieb Bernhard Beschow <shen...@gmail.com>: >>> The QOM API already provides getters for uint64 and uint32 values, so reuse >>> them. >>> >>> Signed-off-by: Bernhard Beschow <shen...@gmail.com> >>> Reviewed-by: Philippe Mathieu-Daudé <f4...@amsat.org> >>> --- >>> hw/vfio/pci-quirks.c | 34 +++++++++------------------------- >>> 1 file changed, 9 insertions(+), 25 deletions(-) >>> >>> diff --git a/hw/vfio/pci-quirks.c b/hw/vfio/pci-quirks.c >>> index 0cf69a8c6d..f0147a050a 100644 >>> --- a/hw/vfio/pci-quirks.c >>> +++ b/hw/vfio/pci-quirks.c >>> @@ -1565,22 +1565,6 @@ static int vfio_add_nv_gpudirect_cap(VFIOPCIDevice >>> *vdev, Error **errp) >>> return 0; >>> } >>> >>> -static void vfio_pci_nvlink2_get_tgt(Object *obj, Visitor *v, >>> - const char *name, >>> - void *opaque, Error **errp) >>> -{ >>> - uint64_t tgt = (uintptr_t) opaque; >>> - visit_type_uint64(v, name, &tgt, errp); >>> -} >>> - >>> -static void vfio_pci_nvlink2_get_link_speed(Object *obj, Visitor *v, >>> - const char *name, >>> - void *opaque, Error >>> **errp) >>> -{ >>> - uint32_t link_speed = (uint32_t)(uintptr_t) opaque; >>> - visit_type_uint32(v, name, &link_speed, errp); >>> -} >>> - >>> int vfio_pci_nvidia_v100_ram_init(VFIOPCIDevice *vdev, Error **errp) >>> { >>> int ret; >>> @@ -1618,9 +1602,9 @@ int vfio_pci_nvidia_v100_ram_init(VFIOPCIDevice >>> *vdev, Error **errp) >>> nv2reg->size, p); >>> QLIST_INSERT_HEAD(&vdev->bars[0].quirks, quirk, next); >>> >>> - object_property_add(OBJECT(vdev), "nvlink2-tgt", "uint64", >>> - vfio_pci_nvlink2_get_tgt, NULL, NULL, >>> - (void *) (uintptr_t) cap->tgt); >>> + object_property_add_uint64_ptr(OBJECT(vdev), "nvlink2-tgt", >>> + (uint64_t *) &cap->tgt, >>> + OBJ_PROP_FLAG_READ); >>> trace_vfio_pci_nvidia_gpu_setup_quirk(vdev->vbasedev.name, cap->tgt, >>> nv2reg->size); >>> free_exit: >>> @@ -1679,15 +1663,15 @@ int vfio_pci_nvlink2_init(VFIOPCIDevice *vdev, >>> Error **errp) >>> QLIST_INSERT_HEAD(&vdev->bars[0].quirks, quirk, next); >>> } >>> >>> - object_property_add(OBJECT(vdev), "nvlink2-tgt", "uint64", >>> - vfio_pci_nvlink2_get_tgt, NULL, NULL, >>> - (void *) (uintptr_t) captgt->tgt); >>> + object_property_add_uint64_ptr(OBJECT(vdev), "nvlink2-tgt", >>> + (uint64_t *) &captgt->tgt, >>> + OBJ_PROP_FLAG_READ); >>> trace_vfio_pci_nvlink2_setup_quirk_ssatgt(vdev->vbasedev.name, >>> captgt->tgt, >>> atsdreg->size); >>> >>> - object_property_add(OBJECT(vdev), "nvlink2-link-speed", "uint32", >>> - vfio_pci_nvlink2_get_link_speed, NULL, NULL, >>> - (void *) (uintptr_t) capspeed->link_speed); >>> + object_property_add_uint32_ptr(OBJECT(vdev), "nvlink2-link-speed", >>> + &capspeed->link_speed, >>> + OBJ_PROP_FLAG_READ); >>> trace_vfio_pci_nvlink2_setup_quirk_lnkspd(vdev->vbasedev.name, >>> capspeed->link_speed); >>> free_exit: >> >> Ping >> >> @Alistair: When resending, I accidently added a Reviewed-by with your name >> here which I asked to be ignored *after* you re-acked patch 2/2. In case you >> intended to ack this patch as well your voice would be needed again. > >FWIW I expect these patches to get merged via the qemu-trivial@ tree >once the 7.1 development window opens.
Excellent! Best regards, Bernhard