Re: [PATCH] vfio/qat: add PCI_IOV dependency
From: Alex Williamson
Date: Fri Jun 07 2024 - 17:34:24 EST
On Fri, 31 May 2024 02:56:09 +0000
"Zeng, Xin" <xin.zeng@xxxxxxxxx> wrote:
> On Wednesday, May 29, 2024 1:36 PM, Tian, Kevin <kevin.tian@xxxxxxxxx> wrote:
> > To: Zeng, Xin <xin.zeng@xxxxxxxxx>; Arnd Bergmann <arnd@xxxxxxxxxx>;
> > Cabiddu, Giovanni <giovanni.cabiddu@xxxxxxxxx>; Alex Williamson
> > <alex.williamson@xxxxxxxxxx>; Cao, Yahui <yahui.cao@xxxxxxxxx>
> > Cc: Arnd Bergmann <arnd@xxxxxxxx>; Jason Gunthorpe <jgg@xxxxxxxx>;
> > Yishai Hadas <yishaih@xxxxxxxxxx>; Shameer Kolothum
> > <shameerali.kolothum.thodi@xxxxxxxxxx>; kvm@xxxxxxxxxxxxxxx; qat-
> > linux <qat-linux@xxxxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx
> > Subject: RE: [PATCH] vfio/qat: add PCI_IOV dependency
> >
> > > From: Zeng, Xin <xin.zeng@xxxxxxxxx>
> > > Sent: Wednesday, May 29, 2024 11:11 AM
> > >
> > > On Wednesday, May 29, 2024 10:25 AM, Tian, Kevin <kevin.tian@xxxxxxxxx>
> > > > To: Arnd Bergmann <arnd@xxxxxxxxxx>; Zeng, Xin <xin.zeng@xxxxxxxxx>;
> > > > Cabiddu, Giovanni <giovanni.cabiddu@xxxxxxxxx>; Alex Williamson
> > > > <alex.williamson@xxxxxxxxxx>; Cao, Yahui <yahui.cao@xxxxxxxxx>
> > > > Cc: Arnd Bergmann <arnd@xxxxxxxx>; Jason Gunthorpe <jgg@xxxxxxxx>;
> > > > Yishai Hadas <yishaih@xxxxxxxxxx>; Shameer Kolothum
> > > > <shameerali.kolothum.thodi@xxxxxxxxxx>; kvm@xxxxxxxxxxxxxxx; qat-
> > > > linux <qat-linux@xxxxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx
> > > > Subject: RE: [PATCH] vfio/qat: add PCI_IOV dependency
> > > >
> > > > > From: Arnd Bergmann <arnd@xxxxxxxxxx>
> > > > > Sent: Tuesday, May 28, 2024 8:05 PM
> > > > >
> > > > > From: Arnd Bergmann <arnd@xxxxxxxx>
> > > > >
> > > > > The newly added driver depends on the crypto driver, but it uses
> > > exported
> > > > > symbols that are only available when IOV is also turned on:
> > > >
> > > > at a glance those undefined symbols don't use any symbol under
> > > > IOV. They are just wrappers to certain callbacks registered by
> > > > by respective qat drivers which support migration.
> > > >
> > > > Probably they'd better be moved out of CONFIG_PCI_IOV in
> > > > "drivers/crypto/intel/qat/qat_common/Makefile" to remove
> > > > this dependency in vfio variant driver.
> > > >
> > >
> > > Thanks, Kevin :-). This dependency is like the relationship between the QAT
> > > vfio
> > > variant driver and macro CRYPTO_DEV_QAT_4XXX. The variant driver
> > doesn't
> > > directly reference the symbols exported by module qat_4xxx which is
> > > protected
> > > by CRYPTO_DEV_QAT_4XXX, but requires the module qat_4xxx at runtime
> > so
> > > far.
> > > Alex suggested to put CRYPTO_DEV_QAT_4XXX as the dependency of this
> > > variant
> > > driver.
> > > For CONFIG_PCI_IOV, if it is disabled, this variant driver doesn't serve the
> > > user as
> > > well since no VFs will be created by QAT PF driver. To keep the consistency,
> > it
> > > might
> > > be right to make it as the dependency of this variant driver as Arnd pointed
> > > out.
> > > What do you think?
> > >
> >
> > Following this rationale then we need also make PCI_IOV a dependency
> > for mlx5 and hisilicon given they are for VF migration too?
>
> After more thoughts about this, I would agree with your first point that
> PCI_IOV should not be the dependency of the variant driver if we consider
> passthrough VFs in a nested virtualized environment.
> So decoupling PCI_IOV from migration helpers in QAT PF driver sounds a
> better option.
Is this then being taken care of in the QAT PF driver? Are there
patches posted targeting v6.10? Is there an archive of qat-linux list
somewhere? I can't find any relevant postings on linux-crypto@vger and
can't find a public archive of qat-linux(??). Thanks,
Alex