linux-next/drivers/vfio
Yishai Hadas c668878381 vfio/mlx5: Refactor to use queue based data chunks
Refactor to use queue based data chunks on the migration file.

The SAVE command adds a chunk to the tail of the queue while the read()
API finds the required chunk and returns its data.

In case the queue is empty but the state of the migration file is
MLX5_MIGF_STATE_COMPLETE, read() may not be blocked but will return 0 to
indicate end of file.

This is a step towards maintaining multiple images and their meta data
(i.e. headers) on the migration file as part of next patches from the
series.

Note:
At that point, we still use a single chunk on the migration file but
becomes ready to support multiple.

Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Yishai Hadas <yishaih@nvidia.com>
Link: https://lore.kernel.org/r/20221206083438.37807-8-yishaih@nvidia.com
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2022-12-06 12:36:44 -07:00
..
fsl-mc vfio: Remove vfio_free_device 2022-11-10 11:30:23 -07:00
mdev vfio/mdev: add mdev available instance checking to the core 2022-10-04 12:06:58 -06:00
pci vfio/mlx5: Refactor to use queue based data chunks 2022-12-06 12:36:44 -07:00
platform vfio: Remove vfio_free_device 2022-11-10 11:30:23 -07:00
container.c vfio: Change vfio_group->group_rwsem to a mutex 2022-10-04 12:06:58 -06:00
iova_bitmap.c vfio/iova_bitmap: refactor iova_bitmap_set() to better handle page boundaries 2022-12-02 10:09:25 -07:00
Kconfig vfio: Fold vfio_virqfd.ko into vfio.ko 2022-12-05 12:04:32 -07:00
Makefile vfio: Fold vfio_virqfd.ko into vfio.ko 2022-12-05 12:04:32 -07:00
vfio_iommu_spapr_tce.c vfio: Move vfio_spapr_iommu_eeh_ioctl into vfio_iommu_spapr_tce.c 2022-12-05 12:04:32 -07:00
vfio_iommu_type1.c Merge branches 'apple/dart', 'arm/mediatek', 'arm/omap', 'arm/smmu', 'virtio', 'x86/vt-d', 'x86/amd' and 'core' into next 2022-09-26 15:52:31 +02:00
vfio_main.c vfio: Extend the device migration protocol with PRE_COPY 2022-12-06 12:36:43 -07:00
vfio.h vfio: Fold vfio_virqfd.ko into vfio.ko 2022-12-05 12:04:32 -07:00
virqfd.c vfio: Fold vfio_virqfd.ko into vfio.ko 2022-12-05 12:04:32 -07:00