On 10/26/23 12:30, Zhenzhong Duan wrote:
> vfio_spapr_create_window calls vfio_spapr_remove_window,
> With reoder of definition of the two, we can make
> vfio_spapr_create/remove_window static.
>
> No functional changes intended.
>
> Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Thanks,
C.
> ---
> include/hw/vfio/vfio-common.h | 6 -----
> hw/vfio/spapr.c | 48 +++++++++++++++++------------------
> 2 files changed, 24 insertions(+), 30 deletions(-)
>
> diff --git a/include/hw/vfio/vfio-common.h b/include/hw/vfio/vfio-common.h
> index 8d1d4f0a89..f3174b3c5c 100644
> --- a/include/hw/vfio/vfio-common.h
> +++ b/include/hw/vfio/vfio-common.h
> @@ -293,12 +293,6 @@ struct vfio_info_cap_header *
> vfio_get_cap(void *ptr, uint32_t cap_offset, uint16_t id);
> #endif
>
> -int vfio_spapr_create_window(VFIOContainer *container,
> - MemoryRegionSection *section,
> - hwaddr *pgsize);
> -int vfio_spapr_remove_window(VFIOContainer *container,
> - hwaddr offset_within_address_space);
> -
> bool vfio_migration_realize(VFIODevice *vbasedev, Error **errp);
> void vfio_migration_exit(VFIODevice *vbasedev);
>
> diff --git a/hw/vfio/spapr.c b/hw/vfio/spapr.c
> index fd0613dfde..43adbdb7b3 100644
> --- a/hw/vfio/spapr.c
> +++ b/hw/vfio/spapr.c
> @@ -146,9 +146,30 @@ static const MemoryListener vfio_prereg_listener = {
> .region_del = vfio_prereg_listener_region_del,
> };
>
> -int vfio_spapr_create_window(VFIOContainer *container,
> - MemoryRegionSection *section,
> - hwaddr *pgsize)
> +static int vfio_spapr_remove_window(VFIOContainer *container,
> + hwaddr offset_within_address_space)
> +{
> + struct vfio_iommu_spapr_tce_remove remove = {
> + .argsz = sizeof(remove),
> + .start_addr = offset_within_address_space,
> + };
> + int ret;
> +
> + ret = ioctl(container->fd, VFIO_IOMMU_SPAPR_TCE_REMOVE, &remove);
> + if (ret) {
> + error_report("Failed to remove window at %"PRIx64,
> + (uint64_t)remove.start_addr);
> + return -errno;
> + }
> +
> + trace_vfio_spapr_remove_window(offset_within_address_space);
> +
> + return 0;
> +}
> +
> +static int vfio_spapr_create_window(VFIOContainer *container,
> + MemoryRegionSection *section,
> + hwaddr *pgsize)
> {
> int ret = 0;
> IOMMUMemoryRegion *iommu_mr = IOMMU_MEMORY_REGION(section->mr);
> @@ -238,27 +259,6 @@ int vfio_spapr_create_window(VFIOContainer *container,
> return 0;
> }
>
> -int vfio_spapr_remove_window(VFIOContainer *container,
> - hwaddr offset_within_address_space)
> -{
> - struct vfio_iommu_spapr_tce_remove remove = {
> - .argsz = sizeof(remove),
> - .start_addr = offset_within_address_space,
> - };
> - int ret;
> -
> - ret = ioctl(container->fd, VFIO_IOMMU_SPAPR_TCE_REMOVE, &remove);
> - if (ret) {
> - error_report("Failed to remove window at %"PRIx64,
> - (uint64_t)remove.start_addr);
> - return -errno;
> - }
> -
> - trace_vfio_spapr_remove_window(offset_within_address_space);
> -
> - return 0;
> -}
> -
> int vfio_container_add_section_window(VFIOContainer *container,
> MemoryRegionSection *section,
> Error **errp)