On Mon, 6 Jun 2022 16:33:14 -0400 Matthew Rosato <mjrosato@xxxxxxxxxxxxx> wrote: > The current contents of vfio-pci-zdev are today only useful in a KVM > environment; let's tie everything currently under vfio-pci-zdev to > this Kconfig statement and require KVM in this case, reducing complexity > (e.g. symbol lookups). > > Signed-off-by: Matthew Rosato <mjrosato@xxxxxxxxxxxxx> > --- > drivers/vfio/pci/Kconfig | 11 +++++++++++ > drivers/vfio/pci/Makefile | 2 +- > include/linux/vfio_pci_core.h | 2 +- > 3 files changed, 13 insertions(+), 2 deletions(-) Acked-by: Alex Williamson <alex.williamson@xxxxxxxxxx> > diff --git a/drivers/vfio/pci/Kconfig b/drivers/vfio/pci/Kconfig > index 4da1914425e1..f9d0c908e738 100644 > --- a/drivers/vfio/pci/Kconfig > +++ b/drivers/vfio/pci/Kconfig > @@ -44,6 +44,17 @@ config VFIO_PCI_IGD > To enable Intel IGD assignment through vfio-pci, say Y. > endif > > +config VFIO_PCI_ZDEV_KVM > + bool "VFIO PCI extensions for s390x KVM passthrough" > + depends on S390 && KVM > + default y > + help > + Support s390x-specific extensions to enable support for enhancements > + to KVM passthrough capabilities, such as interpretive execution of > + zPCI instructions. > + > + To enable s390x KVM vfio-pci extensions, say Y. > + > source "drivers/vfio/pci/mlx5/Kconfig" > > source "drivers/vfio/pci/hisilicon/Kconfig" > diff --git a/drivers/vfio/pci/Makefile b/drivers/vfio/pci/Makefile > index 7052ebd893e0..24c524224da5 100644 > --- a/drivers/vfio/pci/Makefile > +++ b/drivers/vfio/pci/Makefile > @@ -1,7 +1,7 @@ > # SPDX-License-Identifier: GPL-2.0-only > > vfio-pci-core-y := vfio_pci_core.o vfio_pci_intrs.o vfio_pci_rdwr.o vfio_pci_config.o > -vfio-pci-core-$(CONFIG_S390) += vfio_pci_zdev.o > +vfio-pci-core-$(CONFIG_VFIO_PCI_ZDEV_KVM) += vfio_pci_zdev.o > obj-$(CONFIG_VFIO_PCI_CORE) += vfio-pci-core.o > > vfio-pci-y := vfio_pci.o > diff --git a/include/linux/vfio_pci_core.h b/include/linux/vfio_pci_core.h > index 23c176d4b073..63af2897939c 100644 > --- a/include/linux/vfio_pci_core.h > +++ b/include/linux/vfio_pci_core.h > @@ -206,7 +206,7 @@ static inline int vfio_pci_igd_init(struct vfio_pci_core_device *vdev) > } > #endif > > -#ifdef CONFIG_S390 > +#ifdef CONFIG_VFIO_PCI_ZDEV_KVM > extern int vfio_pci_info_zdev_add_caps(struct vfio_pci_core_device *vdev, > struct vfio_info_cap *caps); > #else