[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210201183558.GM4247@nvidia.com>
Date: Mon, 1 Feb 2021 14:35:58 -0400
From: Jason Gunthorpe <jgg@...dia.com>
To: Max Gurtovoy <mgurtovoy@...dia.com>
CC: <cohuck@...hat.com>, <kvm@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <alex.williamson@...hat.com>,
<liranl@...dia.com>, <oren@...dia.com>, <tzahio@...dia.com>,
<leonro@...dia.com>, <yarong@...dia.com>, <aviadye@...dia.com>,
<shahafs@...dia.com>, <artemp@...dia.com>, <kwankhede@...dia.com>,
<ACurrid@...dia.com>, <gmataev@...dia.com>, <cjia@...dia.com>,
<mjrosato@...ux.ibm.com>, <yishaih@...dia.com>, <aik@...abs.ru>
Subject: Re: [PATCH 9/9] vfio/pci: use powernv naming instead of nvlink2
On Mon, Feb 01, 2021 at 04:28:28PM +0000, Max Gurtovoy wrote:
> This patch doesn't change any logic but only align to the concept of
> vfio_pci_core extensions. Extensions that are related to a platform
> and not to a specific vendor of PCI devices should be part of the
> core driver. Extensions that are specific for PCI device vendor should go
> to a dedicated vendor vfio-pci driver.
>
> For now, powernv extensions will include only nvlink2.
>
> Signed-off-by: Max Gurtovoy <mgurtovoy@...dia.com>
> drivers/vfio/pci/Kconfig | 6 ++++--
> drivers/vfio/pci/Makefile | 2 +-
> drivers/vfio/pci/vfio_pci_core.c | 4 ++--
> drivers/vfio/pci/{vfio_pci_nvlink2.c => vfio_pci_powernv.c} | 0
> drivers/vfio/pci/vfio_pci_private.h | 2 +-
> 5 files changed, 8 insertions(+), 6 deletions(-)
> rename drivers/vfio/pci/{vfio_pci_nvlink2.c => vfio_pci_powernv.c} (100%)
This is really nothing to do with PPC, "nvlink" is a PCI device that
shows the entire GPU memory space on these special power systems, and
the this driver changes the normal vfio-pci behavior to match the
single device.
This is probably the best existing example of something that could be
a vendor PCI driver because of how single-device specific it really
is.
Read 7f92891778dff62303c070ac81de7b7d80de331a to get some sense of how
very special a device it is.
This could be like mlx5, with the single PCI ID pre-populated in a
match table.
That is probably the key test for vfio_pci_core vs vfio_pci - if the
modification is triggered by a single PCI ID that can be matched it is
vfio_pci side, not core. Compared to the s390 stuff which applies to
all PCI devices in the system.
Jason
Powered by blists - more mailing lists