[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 09/11] hw/virtio/pci: include vdev name in registered PCI sect
From: |
Alex Bennée |
Subject: |
[PATCH v2 09/11] hw/virtio/pci: include vdev name in registered PCI sections |
Date: |
Mon, 13 Jul 2020 21:04:13 +0100 |
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: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
---
v2
- swap ()'s for an extra -
---
hw/virtio/virtio-pci.c | 22 ++++++++++++++--------
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
index 8554cf2a03..215e680c71 100644
--- a/hw/virtio/virtio-pci.c
+++ b/hw/virtio/virtio-pci.c
@@ -1406,7 +1406,8 @@ 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,
@@ -1453,36 +1454,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);
}
@@ -1623,7 +1629,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
- [PATCH v2 03/11] docker.py: fix fetching of FROM layers, (continued)
- [PATCH v2 03/11] docker.py: fix fetching of FROM layers, Alex Bennée, 2020/07/13
- [PATCH v2 06/11] cputlb: ensure we save the IOTLB data in case of reset, Alex Bennée, 2020/07/13
- [PATCH v2 05/11] tests/plugins: don't unconditionally add -Wpsabi, Alex Bennée, 2020/07/13
- [PATCH v2 08/11] docs/devel: fix grammar in multi-thread-tcg, Alex Bennée, 2020/07/13
- [PATCH v2 10/11] plugins: add API to return a name for a IO device, Alex Bennée, 2020/07/13
- [PATCH v2 09/11] hw/virtio/pci: include vdev name in registered PCI sections,
Alex Bennée <=
- [PATCH v2 07/11] plugins: expand the bb plugin to be thread safe and track per-cpu, Alex Bennée, 2020/07/13
- [PATCH v2 11/11] plugins: new hwprofile plugin, Alex Bennée, 2020/07/13