[GIT PULL] VFIO updates for v5.8-rc1

From: Alex Williamson
Date: Wed Jun 03 2020 - 13:23:11 EST

Hi Linus,

The following changes since commit 9cb1fd0efd195590b828b9b865421ad345a4a145:

Linux 5.7-rc7 (2020-05-24 15:32:54 -0700)

are available in the Git repository at:

git://github.com/awilliam/linux-vfio.git tags/vfio-v5.8-rc1

for you to fetch changes up to 4f085ca2f5a8047845ab2d6bbe97089daed28655:

Merge branch 'v5.8/vfio/kirti-migration-fixes' into v5.8/vfio/next (2020-06-02 13:53:00 -0600)

VFIO updates for v5.8-rc1

- Block accesses to disabled MMIO space (Alex Williamson)

- VFIO device migration API (Kirti Wankhede)

- type1 IOMMU dirty bitmap API and implementation (Kirti Wankhede)

- PCI NULL capability masking (Alex Williamson)

- Memory leak fixes (Qian Cai)

- Reference leak fix (Qiushi Wu)

Alex Williamson (7):
vfio/type1: Support faulting PFNMAP vmas
vfio-pci: Fault mmaps to enable vma tracking
vfio-pci: Invalidate mmaps and block MMIO access on disabled memory
vfio-pci: Mask cap zero
Merge branches 'v5.8/vfio/alex-block-mmio-v3', 'v5.8/vfio/alex-zero-cap-v2' and 'v5.8/vfio/qian-leak-fixes' into v5.8/vfio/next
Merge branch 'qiushi-wu-mdev-ref-v1' into v5.8/vfio/next
Merge branch 'v5.8/vfio/kirti-migration-fixes' into v5.8/vfio/next

Kirti Wankhede (10):
vfio: UAPI for migration interface for device state
vfio iommu: Remove atomicity of ref_count of pinned pages
vfio iommu: Cache pgsize_bitmap in struct vfio_iommu
vfio iommu: Add ioctl definition for dirty pages tracking
vfio iommu: Implementation of ioctl for dirty pages tracking
vfio iommu: Update UNMAP_DMA ioctl to get dirty bitmap before unmap
vfio iommu: Add migration capability to report supported features
vfio: Selective dirty page tracking if IOMMU backed device pins pages
vfio iommu: Use shift operation for 64-bit integer division
vfio iommu: typecast corrections

Qian Cai (2):
vfio/pci: fix memory leaks in alloc_perm_bits()
vfio/pci: fix memory leaks of eventfd ctx

Qiushi Wu (1):
vfio/mdev: Fix reference count leak in add_mdev_supported_type

drivers/vfio/mdev/mdev_sysfs.c | 2 +-
drivers/vfio/pci/vfio_pci.c | 353 +++++++++++++++++++--
drivers/vfio/pci/vfio_pci_config.c | 50 ++-
drivers/vfio/pci/vfio_pci_intrs.c | 14 +
drivers/vfio/pci/vfio_pci_private.h | 15 +
drivers/vfio/pci/vfio_pci_rdwr.c | 24 +-
drivers/vfio/vfio.c | 13 +-
drivers/vfio/vfio_iommu_type1.c | 609 ++++++++++++++++++++++++++++++++----
include/linux/vfio.h | 4 +-
include/uapi/linux/vfio.h | 319 +++++++++++++++++++
10 files changed, 1301 insertions(+), 102 deletions(-)