[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 06/16] util/vfio-helpers: Trace PCI BAR region info
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH 06/16] util/vfio-helpers: Trace PCI BAR region info |
Date: |
Tue, 20 Oct 2020 19:24:18 +0200 |
For debug purpose, trace BAR regions info.
Reviewed-by: Fam Zheng <fam@euphon.net>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
util/vfio-helpers.c | 8 ++++++++
util/trace-events | 1 +
2 files changed, 9 insertions(+)
diff --git a/util/vfio-helpers.c b/util/vfio-helpers.c
index ac9cc20ce29..4204ce55445 100644
--- a/util/vfio-helpers.c
+++ b/util/vfio-helpers.c
@@ -137,6 +137,7 @@ static inline void assert_bar_index_valid(QEMUVFIOState *s,
int index)
static int qemu_vfio_pci_init_bar(QEMUVFIOState *s, int index, Error **errp)
{
+ g_autofree char *barname = NULL;
assert_bar_index_valid(s, index);
s->bar_region_info[index] = (struct vfio_region_info) {
.index = VFIO_PCI_BAR0_REGION_INDEX + index,
@@ -146,6 +147,10 @@ static int qemu_vfio_pci_init_bar(QEMUVFIOState *s, int
index, Error **errp)
error_setg_errno(errp, errno, "Failed to get BAR region info");
return -errno;
}
+ barname = g_strdup_printf("bar[%d]", index);
+ trace_qemu_vfio_region_info(barname, s->bar_region_info[index].offset,
+ s->bar_region_info[index].size,
+ s->bar_region_info[index].cap_offset);
return 0;
}
@@ -440,6 +445,9 @@ static int qemu_vfio_init_pci(QEMUVFIOState *s, const char
*device,
ret = -errno;
goto fail;
}
+ trace_qemu_vfio_region_info("config", s->config_region_info.offset,
+ s->config_region_info.size,
+ s->config_region_info.cap_offset);
for (i = 0; i < ARRAY_SIZE(s->bar_region_info); i++) {
ret = qemu_vfio_pci_init_bar(s, i, errp);
diff --git a/util/trace-events b/util/trace-events
index b697d2d5429..a6a541270b7 100644
--- a/util/trace-events
+++ b/util/trace-events
@@ -88,3 +88,4 @@ qemu_vfio_dma_unmap(void *s, void *host) "s %p host %p"
qemu_vfio_iommu_iova_pgsizes(uint64_t iova_pgsizes) "iommu page size bitmask:
0x%08"PRIx64
qemu_vfio_pci_read_config(void *buf, int ofs, int size, uint64_t region_ofs,
uint64_t region_size) "read cfg ptr %p ofs 0x%x size %d (region ofs 0x%"PRIx64"
size %"PRId64")"
qemu_vfio_pci_write_config(void *buf, int ofs, int size, uint64_t region_ofs,
uint64_t region_size) "write cfg ptr %p ofs 0x%x size %d (region ofs
0x%"PRIx64" size %"PRId64")"
+qemu_vfio_region_info(const char *desc, uint64_t offset, uint64_t size,
uint32_t cap_offset) "region '%s' ofs 0x%"PRIx64" size %"PRId64" cap_ofs
%"PRId32
--
2.26.2
- [PATCH 00/16] util/vfio-helpers: Allow using multiple MSIX IRQs, Philippe Mathieu-Daudé, 2020/10/20
- [PATCH 01/16] block/nvme: Correct minimum device page size, Philippe Mathieu-Daudé, 2020/10/20
- [PATCH 02/16] util/vfio-helpers: Improve reporting unsupported IOMMU type, Philippe Mathieu-Daudé, 2020/10/20
- [PATCH 03/16] util/vfio-helpers: Pass minimum page size to qemu_vfio_open_pci(), Philippe Mathieu-Daudé, 2020/10/20
- [PATCH 04/16] util/vfio-helpers: Report error when IOMMU page size is not supported, Philippe Mathieu-Daudé, 2020/10/20
- [PATCH 05/16] util/vfio-helpers: Trace PCI I/O config accesses, Philippe Mathieu-Daudé, 2020/10/20
- [PATCH 06/16] util/vfio-helpers: Trace PCI BAR region info,
Philippe Mathieu-Daudé <=
- [PATCH 07/16] util/vfio-helpers: Trace where BARs are mapped, Philippe Mathieu-Daudé, 2020/10/20
- [PATCH 08/16] util/vfio-helpers: Improve DMA trace events, Philippe Mathieu-Daudé, 2020/10/20
- [PATCH 09/16] util/vfio-helpers: Convert vfio_dump_mapping to trace events, Philippe Mathieu-Daudé, 2020/10/20
- [PATCH 10/16] util/vfio-helpers: Let qemu_vfio_dma_map() propagate Error, Philippe Mathieu-Daudé, 2020/10/20
- [PATCH 11/16] util/vfio-helpers: Let qemu_vfio_do_mapping() propagate Error, Philippe Mathieu-Daudé, 2020/10/20