ACK: [SRU][F][PATCH 1/1] s390/pci: Mark all VFs as not implementing PCI_COMMAND_MEMORY

Kleber Souza kleber.souza at canonical.com
Tue Dec 15 10:35:00 UTC 2020


On 09.12.20 08:33, frank.heimes at canonical.com wrote:
> From: Matthew Rosato <mjrosato at linux.ibm.com>
> 
> BugLink: https://bugs.launchpad.net/bugs/1907265
> 
> For s390 we can have VFs that are passed-through without the associated
> PF. Firmware provides an emulation layer to allow these devices to
> operate independently, but is missing emulation of the Memory Space
> Enable bit.  For these as well as linked VFs, set no_command_memory
> which specifies these devices do not implement PCI_COMMAND_MEMORY.
> 
> Fixes: abafbc551fdd ("vfio-pci: Invalidate mmaps and block MMIO access on disabled memory")
> Signed-off-by: Matthew Rosato <mjrosato at linux.ibm.com>
> Reviewed-by: Niklas Schnelle <schnelle at linux.ibm.com>
> Reviewed-by: Pierre Morel <pmorel at linux.ibm.com>
> Signed-off-by: Alex Williamson <alex.williamson at redhat.com>
> (cherry picked from commit 08b6e22b850c28b6032da1e4d767a33116e23dfb)
> Signed-off-by: Frank Heimes <frank.heimes at canonical.com>

Acked-by: Kleber Sacilotto de Souza <kleber.souza at canonical.com>

> ---
>   arch/s390/pci/pci_bus.c | 5 +++--
>   1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/s390/pci/pci_bus.c b/arch/s390/pci/pci_bus.c
> index 07b4b4367d69..ebcd04514e8e 100644
> --- a/arch/s390/pci/pci_bus.c
> +++ b/arch/s390/pci/pci_bus.c
> @@ -192,9 +192,10 @@ void pcibios_bus_add_device(struct pci_dev *pdev)
>   	 * With pdev->no_vf_scan the common PCI probing code does not
>   	 * perform PF/VF linking.
>   	 */
> -	if (zdev->vfn)
> +	if (zdev->vfn) {
>   		zpci_bus_setup_virtfn(zdev->zbus, pdev, zdev->vfn);
> -
> +		pdev->no_command_memory = 1;
> +	}
>   }
>   
>   static int zpci_bus_add_device(struct zpci_bus *zbus, struct zpci_dev *zdev)
> 




More information about the kernel-team mailing list