linux-stable/drivers/vfio
Alex Williamson 1ae5bfee6c vfio/pci: Mask buggy SR-IOV VF INTx support
[ Upstream commit db04264fe9 ]

The SR-IOV spec requires that VFs must report zero for the INTx pin
register as VFs are precluded from INTx support.  It's much easier for
the host kernel to understand whether a device is a VF and therefore
whether a non-zero pin register value is bogus than it is to do the
same in userspace.  Override the INTx count for such devices and
virtualize the pin register to provide a consistent view of the device
to the user.

As this is clearly a spec violation, warn about it to support hardware
validation, but also provide a known whitelist as it doesn't do much
good to continue complaining if the hardware vendor doesn't plan to
fix it.

Known devices with this issue: 8086:270c

Tested-by: Gage Eads <gage.eads@intel.com>
Reviewed-by: Ashok Raj <ashok.raj@intel.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-11-20 18:47:32 +01:00
..
mdev vfio/mdev: Re-order sysfs attribute creation 2018-06-08 10:24:30 -06:00
pci vfio/pci: Mask buggy SR-IOV VF INTx support 2019-11-20 18:47:32 +01:00
platform vfio: platform: Fix using devices in PM Domains 2018-06-08 10:24:37 -06:00
Kconfig vfio: Fix build break when SPAPR_TCE_IOMMU=n 2017-02-08 13:13:25 -07: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: Fix WARNING "do not call blocking ops when !TASK_RUNNING" 2019-06-15 11:54:07 +02:00
vfio_iommu_spapr_tce.c Merge branch 'fixes' into next 2018-08-13 15:59:06 +10:00
vfio_iommu_type1.c vfio/type1: Limit DMA mappings per container 2019-05-02 09:58:55 +02:00
vfio_spapr_eeh.c
virqfd.c fs: add new vfs_poll and file_can_poll helpers 2018-05-26 09:16:44 +02:00