OpenCloudOS-Kernel/drivers/vfio
Alex Williamson ebfa440ce3 vfio/pci: Fix SR-IOV VF handling with MMIO blocking
SR-IOV VFs do not implement the memory enable bit of the command
register, therefore this bit is not set in config space after
pci_enable_device().  This leads to an unintended difference
between PF and VF in hand-off state to the user.  We can correct
this by setting the initial value of the memory enable bit in our
virtualized config space.  There's really no need however to
ever fault a user on a VF though as this would only indicate an
error in the user's management of the enable bit, versus a PF
where the same access could trigger hardware faults.

Fixes: abafbc551f ("vfio-pci: Invalidate mmaps and block MMIO access on disabled memory")
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2020-06-25 11:04:23 -06:00
..
mdev vfio/mdev: Fix reference count leak in add_mdev_supported_type 2020-05-29 16:07:18 -06:00
pci vfio/pci: Fix SR-IOV VF handling with MMIO blocking 2020-06-25 11:04:23 -06:00
platform vfio: platform: Switch to platform_get_irq_optional() 2020-03-24 09:26:30 -06:00
Kconfig docs: driver-api: add a series of orphaned documents 2019-07-15 11:03:02 -03:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vfio.c vfio: Selective dirty page tracking if IOMMU backed device pins pages 2020-05-28 15:53:29 -06:00
vfio_iommu_spapr_tce.c vfio/spapr_tce: use mmgrab 2020-01-07 13:03:12 -07:00
vfio_iommu_type1.c kernel: better document the use_mm/unuse_mm API contract 2020-06-10 19:14:18 -07:00
vfio_spapr_eeh.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
virqfd.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00