mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-17 10:26:09 +00:00
PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY
For VFs, the Memory Space Enable bit in the Command Register is hard-wired to 0. Add a new bit to signify devices where the Command Register Memory Space Enable bit does not control the device's response to MMIO accesses. Fixes: abafbc551fdd ("vfio-pci: Invalidate mmaps and block MMIO access on disabled memory") Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com> Acked-by: Bjorn Helgaas <bhelgaas@google.com> Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
This commit is contained in:
parent
ba4f184e12
commit
12856e7acd
@ -180,6 +180,7 @@ int pci_iov_add_virtfn(struct pci_dev *dev, int id)
|
||||
virtfn->device = iov->vf_device;
|
||||
virtfn->is_virtfn = 1;
|
||||
virtfn->physfn = pci_dev_get(dev);
|
||||
virtfn->no_command_memory = 1;
|
||||
|
||||
if (id == 0)
|
||||
pci_read_vf_config_common(virtfn);
|
||||
|
@ -445,6 +445,7 @@ struct pci_dev {
|
||||
unsigned int is_probed:1; /* Device probing in progress */
|
||||
unsigned int link_active_reporting:1;/* Device capable of reporting link active */
|
||||
unsigned int no_vf_scan:1; /* Don't scan for VFs after IOV enablement */
|
||||
unsigned int no_command_memory:1; /* No PCI_COMMAND_MEMORY */
|
||||
pci_dev_flags_t dev_flags;
|
||||
atomic_t enable_cnt; /* pci_enable_device has been called */
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user