From: Joao Martins <joao.m.martins@oracle.com>
To: qemu-devel@nongnu.org
Cc: Alex Williamson <alex.williamson@redhat.com>,
Cedric Le Goater <clg@redhat.com>,
Yishai Hadas <yishaih@nvidia.com>,
Jason Gunthorpe <jgg@nvidia.com>,
Maor Gottlieb <maorg@nvidia.com>,
Kirti Wankhede <kwankhede@nvidia.com>,
Tarun Gupta <targupta@nvidia.com>,
Avihai Horon <avihaih@nvidia.com>,
Joao Martins <joao.m.martins@oracle.com>
Subject: [PATCH v5 06/15] vfio/common: Use a single tracepoint for skipped sections
Date: Tue, 7 Mar 2023 12:54:41 +0000 [thread overview]
Message-ID: <20230307125450.62409-7-joao.m.martins@oracle.com> (raw)
In-Reply-To: <20230307125450.62409-1-joao.m.martins@oracle.com>
In preparation to turn more of the memory listener checks into
common functions, one of the affected places is how we trace when
sections are skipped. Right now there is one for each. Change it
into one single tracepoint `vfio_listener_region_skip` which receives
a name which refers to the callback i.e. region_add and region_del.
Suggested-by: Avihai Horon <avihaih@nvidia.com>
Signed-off-by: Joao Martins <joao.m.martins@oracle.com>
---
hw/vfio/common.c | 4 ++--
hw/vfio/trace-events | 3 +--
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/hw/vfio/common.c b/hw/vfio/common.c
index 99acb998eb14..1cb62efa9743 100644
--- a/hw/vfio/common.c
+++ b/hw/vfio/common.c
@@ -945,7 +945,7 @@ static void vfio_listener_region_add(MemoryListener *listener,
Error *err = NULL;
if (vfio_listener_skipped_section(section)) {
- trace_vfio_listener_region_add_skip(
+ trace_vfio_listener_region_skip("region_add",
section->offset_within_address_space,
section->offset_within_address_space +
int128_get64(int128_sub(section->size, int128_one())));
@@ -1183,7 +1183,7 @@ static void vfio_listener_region_del(MemoryListener *listener,
bool try_unmap = true;
if (vfio_listener_skipped_section(section)) {
- trace_vfio_listener_region_del_skip(
+ trace_vfio_listener_region_skip("region_del",
section->offset_within_address_space,
section->offset_within_address_space +
int128_get64(int128_sub(section->size, int128_one())));
diff --git a/hw/vfio/trace-events b/hw/vfio/trace-events
index 669d9fe07cd9..7173e6a5c721 100644
--- a/hw/vfio/trace-events
+++ b/hw/vfio/trace-events
@@ -96,13 +96,12 @@ vfio_pci_igd_lpc_bridge_enabled(const char *name) "%s"
vfio_region_write(const char *name, int index, uint64_t addr, uint64_t data, unsigned size) " (%s:region%d+0x%"PRIx64", 0x%"PRIx64 ", %d)"
vfio_region_read(char *name, int index, uint64_t addr, unsigned size, uint64_t data) " (%s:region%d+0x%"PRIx64", %d) = 0x%"PRIx64
vfio_iommu_map_notify(const char *op, uint64_t iova_start, uint64_t iova_end) "iommu %s @ 0x%"PRIx64" - 0x%"PRIx64
-vfio_listener_region_add_skip(uint64_t start, uint64_t end) "SKIPPING region_add 0x%"PRIx64" - 0x%"PRIx64
+vfio_listener_region_skip(const char *name, uint64_t start, uint64_t end) "SKIPPING %s 0x%"PRIx64" - 0x%"PRIx64
vfio_spapr_group_attach(int groupfd, int tablefd) "Attached groupfd %d to liobn fd %d"
vfio_listener_region_add_iommu(uint64_t start, uint64_t end) "region_add [iommu] 0x%"PRIx64" - 0x%"PRIx64
vfio_listener_region_add_ram(uint64_t iova_start, uint64_t iova_end, void *vaddr) "region_add [ram] 0x%"PRIx64" - 0x%"PRIx64" [%p]"
vfio_known_safe_misalignment(const char *name, uint64_t iova, uint64_t offset_within_region, uintptr_t page_size) "Region \"%s\" iova=0x%"PRIx64" offset_within_region=0x%"PRIx64" qemu_real_host_page_size=0x%"PRIxPTR
vfio_listener_region_add_no_dma_map(const char *name, uint64_t iova, uint64_t size, uint64_t page_size) "Region \"%s\" 0x%"PRIx64" size=0x%"PRIx64" is not aligned to 0x%"PRIx64" and cannot be mapped for DMA"
-vfio_listener_region_del_skip(uint64_t start, uint64_t end) "SKIPPING region_del 0x%"PRIx64" - 0x%"PRIx64
vfio_listener_region_del(uint64_t start, uint64_t end) "region_del 0x%"PRIx64" - 0x%"PRIx64
vfio_disconnect_container(int fd) "close container->fd=%d"
vfio_put_group(int fd) "close group->fd=%d"
--
2.17.2
next prev parent reply other threads:[~2023-03-07 12:56 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-07 12:54 [PATCH v5 00/15] vfio/migration: Device dirty page tracking Joao Martins
2023-03-07 12:54 ` [PATCH v5 01/15] vfio/common: Fix error reporting in vfio_get_dirty_bitmap() Joao Martins
2023-03-07 12:54 ` [PATCH v5 02/15] vfio/common: Fix wrong %m usages Joao Martins
2023-03-07 12:54 ` [PATCH v5 03/15] vfio/common: Abort migration if dirty log start/stop/sync fails Joao Martins
2023-03-07 12:54 ` [PATCH v5 04/15] vfio/common: Add VFIOBitmap and alloc function Joao Martins
2023-03-07 12:54 ` [PATCH v5 05/15] vfio/common: Add helper to validate iova/end against hostwin Joao Martins
2023-03-07 12:54 ` Joao Martins [this message]
2023-03-07 13:27 ` [PATCH v5 06/15] vfio/common: Use a single tracepoint for skipped sections Cédric Le Goater
2023-03-07 12:54 ` [PATCH v5 07/15] vfio/common: Consolidate skip/invalid section into helper Joao Martins
2023-03-07 12:54 ` [PATCH v5 08/15] vfio/common: Add helper to consolidate iova/end calculation Joao Martins
2023-03-07 13:28 ` Cédric Le Goater
2023-03-07 12:54 ` [PATCH v5 09/15] vfio/common: Record DMA mapped IOVA ranges Joao Martins
2023-03-07 13:36 ` Cédric Le Goater
2023-03-07 12:54 ` [PATCH v5 10/15] vfio/common: Add device dirty page tracking start/stop Joao Martins
2023-03-07 14:49 ` Cédric Le Goater
2023-03-07 14:54 ` Joao Martins
2023-03-07 12:54 ` [PATCH v5 11/15] vfio/common: Extract code from vfio_get_dirty_bitmap() to new function Joao Martins
2023-03-07 12:54 ` [PATCH v5 12/15] vfio/common: Add device dirty page bitmap sync Joao Martins
2023-03-07 15:16 ` Cédric Le Goater
2023-03-07 12:54 ` [PATCH v5 13/15] vfio/migration: Block migration with vIOMMU Joao Martins
2023-03-07 16:38 ` Alex Williamson
2023-03-07 16:42 ` Alex Williamson
2023-03-07 12:54 ` [PATCH v5 14/15] vfio/migration: Query device dirty page tracking support Joao Martins
2023-03-07 12:54 ` [PATCH v5 15/15] docs/devel: Document VFIO device dirty page tracking Joao Martins
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230307125450.62409-7-joao.m.martins@oracle.com \
--to=joao.m.martins@oracle.com \
--cc=alex.williamson@redhat.com \
--cc=avihaih@nvidia.com \
--cc=clg@redhat.com \
--cc=jgg@nvidia.com \
--cc=kwankhede@nvidia.com \
--cc=maorg@nvidia.com \
--cc=qemu-devel@nongnu.org \
--cc=targupta@nvidia.com \
--cc=yishaih@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).