On 26/03/2025 07:51, Cédric Le Goater wrote:
> File "common.c" has been emptied of most of its definitions by the
> previous changes and the only definitions left are related to the VFIO
> MemoryListener handlers. Rename it to "listener.c" and introduce its
> associated "vfio-listener.h" header file for the declarations.
>
> Cleanup a little the includes while at it.
>
> Signed-off-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Joao Martins <joao.m.martins@oracle.com>
> ---
> hw/vfio/vfio-listener.h | 14 ++++++++++++++
> include/hw/vfio/vfio-common.h | 1 -
> hw/vfio/container.c | 1 +
> hw/vfio/iommufd.c | 1 +
> hw/vfio/{common.c => listener.c} | 0
> hw/vfio/meson.build | 2 +-
> hw/vfio/trace-events | 2 +-
> 7 files changed, 18 insertions(+), 3 deletions(-)
> create mode 100644 hw/vfio/vfio-listener.h
> rename hw/vfio/{common.c => listener.c} (100%)
>
> diff --git a/hw/vfio/vfio-listener.h b/hw/vfio/vfio-listener.h
> new file mode 100644
> index 0000000000000000000000000000000000000000..93af6747b28955f038454a335b361787f8364a3a
> --- /dev/null
> +++ b/hw/vfio/vfio-listener.h
> @@ -0,0 +1,14 @@
> +/*
> + * VFIO MemoryListener services
> + *
> + * Copyright Red Hat, Inc. 2025
> + *
> + * SPDX-License-Identifier: GPL-2.0-or-later
> + */
> +
> +#ifndef HW_VFIO_VFIO_LISTENER_H
> +#define HW_VFIO_VFIO_LISTENER_H
> +
> +extern const MemoryListener vfio_memory_listener;
> +
> +#endif /* HW_VFIO_VFIO_LISTENER_H */
> diff --git a/include/hw/vfio/vfio-common.h b/include/hw/vfio/vfio-common.h
> index a804af9f651f0916ca06b3f4f009381eea385ba0..4ab6e18d3c798ab379b98a0a16504814ec0556b1 100644
> --- a/include/hw/vfio/vfio-common.h
> +++ b/include/hw/vfio/vfio-common.h
> @@ -131,7 +131,6 @@ VFIODevice *vfio_get_vfio_device(Object *obj);
>
> typedef QLIST_HEAD(VFIODeviceList, VFIODevice) VFIODeviceList;
> extern VFIODeviceList vfio_device_list;
> -extern const MemoryListener vfio_memory_listener;
>
> #ifdef CONFIG_LINUX
> int vfio_get_region_info(VFIODevice *vbasedev, int index,
> diff --git a/hw/vfio/container.c b/hw/vfio/container.c
> index c74e08e531a501313cab27c57728a8c940d975be..acebb53dcb1b829d31cc31d9f7f2cc9599f952eb 100644
> --- a/hw/vfio/container.c
> +++ b/hw/vfio/container.c
> @@ -35,6 +35,7 @@
> #include "hw/vfio/vfio-container.h"
> #include "vfio-helpers.h"
> #include "vfio-cpr.h"
> +#include "vfio-listener.h"
>
> #define TYPE_HOST_IOMMU_DEVICE_LEGACY_VFIO TYPE_HOST_IOMMU_DEVICE "-legacy-vfio"
>
> diff --git a/hw/vfio/iommufd.c b/hw/vfio/iommufd.c
> index a5bd189a86d70bd11ecb80384ac145a51979322b..7488d21215b6eee78c9c51cfb227d9c8c59c4978 100644
> --- a/hw/vfio/iommufd.c
> +++ b/hw/vfio/iommufd.c
> @@ -28,6 +28,7 @@
> #include "vfio-iommufd.h"
> #include "vfio-helpers.h"
> #include "vfio-cpr.h"
> +#include "vfio-listener.h"
>
> #define TYPE_HOST_IOMMU_DEVICE_IOMMUFD_VFIO \
> TYPE_HOST_IOMMU_DEVICE_IOMMUFD "-vfio"
> diff --git a/hw/vfio/common.c b/hw/vfio/listener.c
> similarity index 100%
> rename from hw/vfio/common.c
> rename to hw/vfio/listener.c
> diff --git a/hw/vfio/meson.build b/hw/vfio/meson.build
> index 9c8a989db2d4578e97d864c5fd8bcba125eab66a..bccb05098ce18968caaa4d5d8dec3df0852d0398 100644
> --- a/hw/vfio/meson.build
> +++ b/hw/vfio/meson.build
> @@ -1,6 +1,6 @@
> vfio_ss = ss.source_set()
> vfio_ss.add(files(
> - 'common.c',
> + 'listener.c',
> 'container-base.c',
> 'container.c',
> 'helpers.c',
> diff --git a/hw/vfio/trace-events b/hw/vfio/trace-events
> index aa0ba695fa38f7767bf506ec604046101186e7d4..ddb1bcc24a9cdc405713ca04d4ecc3d4a923ec42 100644
> --- a/hw/vfio/trace-events
> +++ b/hw/vfio/trace-events
> @@ -89,7 +89,7 @@ vfio_pci_igd_bdsm_enabled(const char *name, int size) "%s %dMB"
> vfio_pci_igd_host_bridge_enabled(const char *name) "%s"
> vfio_pci_igd_lpc_bridge_enabled(const char *name) "%s"
>
> -# common.c
> +# listener.c
> vfio_iommu_map_notify(const char *op, uint64_t iova_start, uint64_t iova_end) "iommu %s @ 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"