On 26/03/2025 07:51, Cédric Le Goater wrote: > vfio_container_query_dirty_bitmap() is consistent the VFIO container > routine naming scheme and is now free to use. > > Signed-off-by: Cédric Le Goater <c...@redhat.com>
Reviewed-by: Joao Martins <joao.m.mart...@oracle.com> > --- > include/hw/vfio/vfio-container-base.h | 4 ++-- > hw/vfio/common.c | 6 +++--- > hw/vfio/container-base.c | 5 +++-- > hw/vfio/container.c | 2 +- > hw/vfio/trace-events | 2 +- > 5 files changed, 10 insertions(+), 9 deletions(-) > > diff --git a/include/hw/vfio/vfio-container-base.h > b/include/hw/vfio/vfio-container-base.h > index > 163d9b3c30b3093d2f40bb3d3ffc0314519ac285..a441932be779e5c6740da78f005ed2c8320e7cb2 > 100644 > --- a/include/hw/vfio/vfio-container-base.h > +++ b/include/hw/vfio/vfio-container-base.h > @@ -93,8 +93,8 @@ bool vfio_container_dirty_tracking_is_started( > const VFIOContainerBase *bcontainer); > bool vfio_container_devices_dirty_tracking_is_supported( > const VFIOContainerBase *bcontainer); > -int vfio_get_dirty_bitmap(const VFIOContainerBase *bcontainer, uint64_t iova, > - uint64_t size, ram_addr_t ram_addr, Error **errp); > +int vfio_container_query_dirty_bitmap(const VFIOContainerBase *bcontainer, > + uint64_t iova, uint64_t size, ram_addr_t ram_addr, Error **errp); > > GList *vfio_container_get_iova_ranges(const VFIOContainerBase *bcontainer); > > diff --git a/hw/vfio/common.c b/hw/vfio/common.c > index > d063ea03c1cb4f475d421e626c703875fecd97a8..26ced6d4fb04b0dedf399686db40acaca5d85552 > 100644 > --- a/hw/vfio/common.c > +++ b/hw/vfio/common.c > @@ -1003,7 +1003,7 @@ static void vfio_iommu_map_dirty_notify(IOMMUNotifier > *n, IOMMUTLBEntry *iotlb) > goto out_unlock; > } > > - ret = vfio_get_dirty_bitmap(bcontainer, iova, iotlb->addr_mask + 1, > + ret = vfio_container_query_dirty_bitmap(bcontainer, iova, > iotlb->addr_mask + 1, > translated_addr, &local_err); > if (ret) { > error_prepend(&local_err, > @@ -1040,7 +1040,7 @@ static int > vfio_ram_discard_get_dirty_bitmap(MemoryRegionSection *section, > * Sync the whole mapped region (spanning multiple individual mappings) > * in one go. > */ > - ret = vfio_get_dirty_bitmap(vrdl->bcontainer, iova, size, ram_addr, > + ret = vfio_container_query_dirty_bitmap(vrdl->bcontainer, iova, size, > ram_addr, > &local_err); > if (ret) { > error_report_err(local_err); > @@ -1134,7 +1134,7 @@ static int vfio_sync_dirty_bitmap(VFIOContainerBase > *bcontainer, > ram_addr = memory_region_get_ram_addr(section->mr) + > section->offset_within_region; > > - return vfio_get_dirty_bitmap(bcontainer, > + return vfio_container_query_dirty_bitmap(bcontainer, > > REAL_HOST_PAGE_ALIGN(section->offset_within_address_space), > int128_get64(section->size), ram_addr, > errp); > } > diff --git a/hw/vfio/container-base.c b/hw/vfio/container-base.c > index > 648dd25676e5b25a7c414109888b2796f890deac..a2e7a3b2e747d422f7a681fb09b1182e119c6d20 > 100644 > --- a/hw/vfio/container-base.c > +++ b/hw/vfio/container-base.c > @@ -237,7 +237,7 @@ static int > vfio_container_devices_query_dirty_bitmap(const VFIOContainerBase *bc > return 0; > } > > -int vfio_get_dirty_bitmap(const VFIOContainerBase *bcontainer, uint64_t iova, > +int vfio_container_query_dirty_bitmap(const VFIOContainerBase *bcontainer, > uint64_t iova, > uint64_t size, ram_addr_t ram_addr, Error **errp) > { > bool all_device_dirty_tracking = > @@ -275,7 +275,8 @@ int vfio_get_dirty_bitmap(const VFIOContainerBase > *bcontainer, uint64_t iova, > dirty_pages = cpu_physical_memory_set_dirty_lebitmap(vbmap.bitmap, > ram_addr, > vbmap.pages); > > - trace_vfio_get_dirty_bitmap(iova, size, vbmap.size, ram_addr, > dirty_pages); > + trace_vfio_container_query_dirty_bitmap(iova, size, vbmap.size, ram_addr, > + dirty_pages); > out: > g_free(vbmap.bitmap); > > diff --git a/hw/vfio/container.c b/hw/vfio/container.c > index > 9ea03ed618f6aefe35f966c644cbbc127ce7bf06..c74e08e531a501313cab27c57728a8c940d975be > 100644 > --- a/hw/vfio/container.c > +++ b/hw/vfio/container.c > @@ -169,7 +169,7 @@ static int vfio_legacy_dma_unmap(const VFIOContainerBase > *bcontainer, > } > > if (need_dirty_sync) { > - ret = vfio_get_dirty_bitmap(bcontainer, iova, size, > + ret = vfio_container_query_dirty_bitmap(bcontainer, iova, size, > iotlb->translated_addr, &local_err); > if (ret) { > error_report_err(local_err); > diff --git a/hw/vfio/trace-events b/hw/vfio/trace-events > index > d4cd09cb0f93485fe06984346f6ac927603c5745..aa0ba695fa38f7767bf506ec604046101186e7d4 > 100644 > --- a/hw/vfio/trace-events > +++ b/hw/vfio/trace-events > @@ -109,7 +109,7 @@ vfio_legacy_dma_unmap_overflow_workaround(void) "" > vfio_iommu_map_dirty_notify(uint64_t iova_start, uint64_t iova_end) "iommu > dirty @ 0x%"PRIx64" - 0x%"PRIx64 > > # container-base.c > -vfio_get_dirty_bitmap(uint64_t iova, uint64_t size, uint64_t bitmap_size, > uint64_t start, uint64_t dirty_pages) "iova=0x%"PRIx64" size= 0x%"PRIx64" > bitmap_size=0x%"PRIx64" start=0x%"PRIx64" dirty_pages=%"PRIu64 > +vfio_container_query_dirty_bitmap(uint64_t iova, uint64_t size, uint64_t > bitmap_size, uint64_t start, uint64_t dirty_pages) "iova=0x%"PRIx64" size= > 0x%"PRIx64" bitmap_size=0x%"PRIx64" start=0x%"PRIx64" dirty_pages=%"PRIu64 > > # region.c> vfio_region_write(const char *name, int index, uint64_t addr, uint64_t data, unsigned size) " (%s:region%d+0x%"PRIx64", 0x%"PRIx64 ", %d)"