Message ID | 20200602154624.4460-7-alex.bennee@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | plugins/next (bug fixes, hwprofile, lockstep) | expand |
On 6/2/20 5:46 PM, Alex Bennée wrote: > When viewing/debugging memory regions it is sometimes hard to figure > out which PCI device something belongs to. Make the names unique by > including the vdev name in the name string. > > Signed-off-by: Alex Bennée <alex.bennee@linaro.org> > --- > hw/virtio/virtio-pci.c | 21 +++++++++++++-------- > 1 file changed, 13 insertions(+), 8 deletions(-) > > diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c > index d028c17c240..9ee4ab26cfe 100644 > --- a/hw/virtio/virtio-pci.c > +++ b/hw/virtio/virtio-pci.c > @@ -1390,7 +1390,7 @@ static void virtio_pci_device_write(void *opaque, hwaddr addr, > } > } > > -static void virtio_pci_modern_regions_init(VirtIOPCIProxy *proxy) > +static void virtio_pci_modern_regions_init(VirtIOPCIProxy *proxy, const char *vdev_name) > { > static const MemoryRegionOps common_ops = { > .read = virtio_pci_common_read, > @@ -1437,36 +1437,41 @@ static void virtio_pci_modern_regions_init(VirtIOPCIProxy *proxy) > }, > .endianness = DEVICE_LITTLE_ENDIAN, > }; > + g_autoptr(GString) name = g_string_new(NULL); > > - > + g_string_printf(name, "virtio-pci-common(%s)", vdev_name); > memory_region_init_io(&proxy->common.mr, OBJECT(proxy), > &common_ops, > proxy, > - "virtio-pci-common", > + name->str, > proxy->common.size); > > + g_string_printf(name, "virtio-pci-isr(%s)", vdev_name); > memory_region_init_io(&proxy->isr.mr, OBJECT(proxy), > &isr_ops, > proxy, > - "virtio-pci-isr", > + name->str, > proxy->isr.size); > > + g_string_printf(name, "virtio-pci-device(%s)", vdev_name); > memory_region_init_io(&proxy->device.mr, OBJECT(proxy), > &device_ops, > virtio_bus_get_device(&proxy->bus), > - "virtio-pci-device", > + name->str, > proxy->device.size); > > + g_string_printf(name, "virtio-pci-notify(%s)", vdev_name); > memory_region_init_io(&proxy->notify.mr, OBJECT(proxy), > ¬ify_ops, > virtio_bus_get_device(&proxy->bus), > - "virtio-pci-notify", > + name->str, > proxy->notify.size); > > + g_string_printf(name, "virtio-pci-notify-pio(%s)", vdev_name); > memory_region_init_io(&proxy->notify_pio.mr, OBJECT(proxy), > ¬ify_pio_ops, > virtio_bus_get_device(&proxy->bus), > - "virtio-pci-notify-pio", > + name->str, > proxy->notify_pio.size); > } > > @@ -1607,7 +1612,7 @@ static void virtio_pci_device_plugged(DeviceState *d, Error **errp) > > struct virtio_pci_cfg_cap *cfg_mask; > > - virtio_pci_modern_regions_init(proxy); > + virtio_pci_modern_regions_init(proxy, vdev->name); > > virtio_pci_modern_mem_region_map(proxy, &proxy->common, &cap); > virtio_pci_modern_mem_region_map(proxy, &proxy->isr, &cap); > Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
On Tue, Jun 02, 2020 at 04:46:21PM +0100, Alex Bennée wrote: > When viewing/debugging memory regions it is sometimes hard to figure > out which PCI device something belongs to. Make the names unique by > including the vdev name in the name string. > > Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Feel free to merge with the rest of it. > --- > hw/virtio/virtio-pci.c | 21 +++++++++++++-------- > 1 file changed, 13 insertions(+), 8 deletions(-) > > diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c > index d028c17c240..9ee4ab26cfe 100644 > --- a/hw/virtio/virtio-pci.c > +++ b/hw/virtio/virtio-pci.c > @@ -1390,7 +1390,7 @@ static void virtio_pci_device_write(void *opaque, hwaddr addr, > } > } > > -static void virtio_pci_modern_regions_init(VirtIOPCIProxy *proxy) > +static void virtio_pci_modern_regions_init(VirtIOPCIProxy *proxy, const char *vdev_name) > { > static const MemoryRegionOps common_ops = { > .read = virtio_pci_common_read, > @@ -1437,36 +1437,41 @@ static void virtio_pci_modern_regions_init(VirtIOPCIProxy *proxy) > }, > .endianness = DEVICE_LITTLE_ENDIAN, > }; > + g_autoptr(GString) name = g_string_new(NULL); > > - > + g_string_printf(name, "virtio-pci-common(%s)", vdev_name); > memory_region_init_io(&proxy->common.mr, OBJECT(proxy), > &common_ops, > proxy, > - "virtio-pci-common", > + name->str, > proxy->common.size); > > + g_string_printf(name, "virtio-pci-isr(%s)", vdev_name); > memory_region_init_io(&proxy->isr.mr, OBJECT(proxy), > &isr_ops, > proxy, > - "virtio-pci-isr", > + name->str, > proxy->isr.size); > > + g_string_printf(name, "virtio-pci-device(%s)", vdev_name); > memory_region_init_io(&proxy->device.mr, OBJECT(proxy), > &device_ops, > virtio_bus_get_device(&proxy->bus), > - "virtio-pci-device", > + name->str, > proxy->device.size); > > + g_string_printf(name, "virtio-pci-notify(%s)", vdev_name); > memory_region_init_io(&proxy->notify.mr, OBJECT(proxy), > ¬ify_ops, > virtio_bus_get_device(&proxy->bus), > - "virtio-pci-notify", > + name->str, > proxy->notify.size); > > + g_string_printf(name, "virtio-pci-notify-pio(%s)", vdev_name); > memory_region_init_io(&proxy->notify_pio.mr, OBJECT(proxy), > ¬ify_pio_ops, > virtio_bus_get_device(&proxy->bus), > - "virtio-pci-notify-pio", > + name->str, > proxy->notify_pio.size); > } > > @@ -1607,7 +1612,7 @@ static void virtio_pci_device_plugged(DeviceState *d, Error **errp) > > struct virtio_pci_cfg_cap *cfg_mask; > > - virtio_pci_modern_regions_init(proxy); > + virtio_pci_modern_regions_init(proxy, vdev->name); > > virtio_pci_modern_mem_region_map(proxy, &proxy->common, &cap); > virtio_pci_modern_mem_region_map(proxy, &proxy->isr, &cap); > -- > 2.20.1 > >
diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c index d028c17c240..9ee4ab26cfe 100644 --- a/hw/virtio/virtio-pci.c +++ b/hw/virtio/virtio-pci.c @@ -1390,7 +1390,7 @@ static void virtio_pci_device_write(void *opaque, hwaddr addr, } } -static void virtio_pci_modern_regions_init(VirtIOPCIProxy *proxy) +static void virtio_pci_modern_regions_init(VirtIOPCIProxy *proxy, const char *vdev_name) { static const MemoryRegionOps common_ops = { .read = virtio_pci_common_read, @@ -1437,36 +1437,41 @@ static void virtio_pci_modern_regions_init(VirtIOPCIProxy *proxy) }, .endianness = DEVICE_LITTLE_ENDIAN, }; + g_autoptr(GString) name = g_string_new(NULL); - + g_string_printf(name, "virtio-pci-common(%s)", vdev_name); memory_region_init_io(&proxy->common.mr, OBJECT(proxy), &common_ops, proxy, - "virtio-pci-common", + name->str, proxy->common.size); + g_string_printf(name, "virtio-pci-isr(%s)", vdev_name); memory_region_init_io(&proxy->isr.mr, OBJECT(proxy), &isr_ops, proxy, - "virtio-pci-isr", + name->str, proxy->isr.size); + g_string_printf(name, "virtio-pci-device(%s)", vdev_name); memory_region_init_io(&proxy->device.mr, OBJECT(proxy), &device_ops, virtio_bus_get_device(&proxy->bus), - "virtio-pci-device", + name->str, proxy->device.size); + g_string_printf(name, "virtio-pci-notify(%s)", vdev_name); memory_region_init_io(&proxy->notify.mr, OBJECT(proxy), ¬ify_ops, virtio_bus_get_device(&proxy->bus), - "virtio-pci-notify", + name->str, proxy->notify.size); + g_string_printf(name, "virtio-pci-notify-pio(%s)", vdev_name); memory_region_init_io(&proxy->notify_pio.mr, OBJECT(proxy), ¬ify_pio_ops, virtio_bus_get_device(&proxy->bus), - "virtio-pci-notify-pio", + name->str, proxy->notify_pio.size); } @@ -1607,7 +1612,7 @@ static void virtio_pci_device_plugged(DeviceState *d, Error **errp) struct virtio_pci_cfg_cap *cfg_mask; - virtio_pci_modern_regions_init(proxy); + virtio_pci_modern_regions_init(proxy, vdev->name); virtio_pci_modern_mem_region_map(proxy, &proxy->common, &cap); virtio_pci_modern_mem_region_map(proxy, &proxy->isr, &cap);
When viewing/debugging memory regions it is sometimes hard to figure out which PCI device something belongs to. Make the names unique by including the vdev name in the name string. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> --- hw/virtio/virtio-pci.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) -- 2.20.1