[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 2/2] hw/vfio: Add nr of dirty pages to vfio_get_dirty_bitm
From: |
Joao Martins |
Subject: |
Re: [PATCH v3 2/2] hw/vfio: Add nr of dirty pages to vfio_get_dirty_bitmap tracepoint |
Date: |
Tue, 30 May 2023 09:48:20 +0100 |
On 30/05/2023 09:39, Avihai Horon wrote:
>
> On 29/05/2023 15:11, Joao Martins wrote:
>> External email: Use caution opening links or attachments
>>
> Just a nit, maybe subject should be "vfio/common: Add number of dirty pages to
> vfio_get_dirty_bitmap tracepoint".
>
Fixed
>> Include the number of dirty pages on the vfio_get_dirty_bitmap tracepoint.
>> These are fetched from the newly added return value in
>> cpu_physical_memory_set_lebitmap().
>
> s/cpu_physical_memory_set_lebitmap()/cpu_physical_memory_set_dirty_lebitmap()
>
Fixed
>>
>> Signed-off-by: Joao Martins <joao.m.martins@oracle.com>
>> ---
>> hw/vfio/common.c | 7 ++++---
>> hw/vfio/trace-events | 2 +-
>> 2 files changed, 5 insertions(+), 4 deletions(-)
>>
>> diff --git a/hw/vfio/common.c b/hw/vfio/common.c
>> index 78358ede2764..fa8fd949b1cf 100644
>> --- a/hw/vfio/common.c
>> +++ b/hw/vfio/common.c
>> @@ -1747,6 +1747,7 @@ static int vfio_get_dirty_bitmap(VFIOContainer
>> *container, uint64_t iova,
>> {
>> bool all_device_dirty_tracking =
>> vfio_devices_all_device_dirty_tracking(container);
>> + uint64_t dirty_pages;
>> VFIOBitmap vbmap;
>> int ret;
>>
>> @@ -1772,11 +1773,11 @@ static int vfio_get_dirty_bitmap(VFIOContainer
>> *container, uint64_t iova,
>> goto out;
>> }
>>
>> - cpu_physical_memory_set_dirty_lebitmap(vbmap.bitmap, ram_addr,
>> - vbmap.pages);
>> + dirty_pages = cpu_physical_memory_set_dirty_lebitmap(vbmap.bitmap,
>> ram_addr,
>> + vbmap.pages);
>>
>> trace_vfio_get_dirty_bitmap(container->fd, iova, size, vbmap.size,
>> - ram_addr);
>> + ram_addr, dirty_pages);
>> out:
>> g_free(vbmap.bitmap);
>>
>> diff --git a/hw/vfio/trace-events b/hw/vfio/trace-events
>> index 646e42fd27f9..cfb60c354de3 100644
>> --- a/hw/vfio/trace-events
>> +++ b/hw/vfio/trace-events
>> @@ -120,7 +120,7 @@ vfio_region_sparse_mmap_header(const char *name, int
>> index, int nr_areas) "Devic
>> vfio_region_sparse_mmap_entry(int i, unsigned long start, unsigned long
>> end)
>> "sparse entry %d [0x%lx - 0x%lx]"
>> vfio_get_dev_region(const char *name, int index, uint32_t type, uint32_t
>> subtype) "%s index %d, %08x/%08x"
>> vfio_dma_unmap_overflow_workaround(void) ""
>> -vfio_get_dirty_bitmap(int fd, uint64_t iova, uint64_t size, uint64_t
>> bitmap_size, uint64_t start) "container fd=%d, iova=0x%"PRIx64" size=
>> 0x%"PRIx64" bitmap_size=0x%"PRIx64" start=0x%"PRIx64
>> +vfio_get_dirty_bitmap(int fd, uint64_t iova, uint64_t size, uint64_t
>> bitmap_size, uint64_t start, uint64_t dirty_pages) "container fd=%d,
>> iova=0x%"PRIx64" size= 0x%"PRIx64" bitmap_size=0x%"PRIx64" start=0x%"PRIx64"
>> dirty_pages=%"PRIu64
>> vfio_iommu_map_dirty_notify(uint64_t iova_start, uint64_t iova_end) "iommu
>> dirty @ 0x%"PRIx64" - 0x%"PRIx64
>>
>> # platform.c
>> --
>> 2.39.3
>>