Message ID | 20240109075731.2726731-1-arnd@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | vfio: fix virtio-pci dependency | expand |
> From: Arnd Bergmann <arnd@kernel.org> > Sent: Tuesday, January 9, 2024 3:57 PM > > From: Arnd Bergmann <arnd@arndb.de> > > The new vfio-virtio driver already has a dependency on > VIRTIO_PCI_ADMIN_LEGACY, > but that is a bool symbol and allows vfio-virtio to be built-in even if > virtio-pci itself is a loadable module. This leads to a link failure: > > aarch64-linux-ld: drivers/vfio/pci/virtio/main.o: in function > `virtiovf_pci_probe': > main.c:(.text+0xec): undefined reference to `virtio_pci_admin_has_legacy_io' > aarch64-linux-ld: drivers/vfio/pci/virtio/main.o: in function > `virtiovf_pci_init_device': > main.c:(.text+0x260): undefined reference to > `virtio_pci_admin_legacy_io_notify_info' > aarch64-linux-ld: drivers/vfio/pci/virtio/main.o: in function > `virtiovf_pci_bar0_rw': > main.c:(.text+0x6ec): undefined reference to > `virtio_pci_admin_legacy_common_io_read' > aarch64-linux-ld: main.c:(.text+0x6f4): undefined reference to > `virtio_pci_admin_legacy_device_io_read' > aarch64-linux-ld: main.c:(.text+0x7f0): undefined reference to > `virtio_pci_admin_legacy_common_io_write' > aarch64-linux-ld: main.c:(.text+0x7f8): undefined reference to > `virtio_pci_admin_legacy_device_io_write' > > Add another explicit dependency on the tristate symbol. > > Fixes: eb61eca0e8c3 ("vfio/virtio: Introduce a vfio driver over virtio devices") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Kevin Tian <kevin.tian@intel.com>
On Tue, 9 Jan 2024 08:57:19 +0100 Arnd Bergmann <arnd@kernel.org> wrote: > From: Arnd Bergmann <arnd@arndb.de> > > The new vfio-virtio driver already has a dependency on VIRTIO_PCI_ADMIN_LEGACY, > but that is a bool symbol and allows vfio-virtio to be built-in even if > virtio-pci itself is a loadable module. This leads to a link failure: > > aarch64-linux-ld: drivers/vfio/pci/virtio/main.o: in function `virtiovf_pci_probe': > main.c:(.text+0xec): undefined reference to `virtio_pci_admin_has_legacy_io' > aarch64-linux-ld: drivers/vfio/pci/virtio/main.o: in function `virtiovf_pci_init_device': > main.c:(.text+0x260): undefined reference to `virtio_pci_admin_legacy_io_notify_info' > aarch64-linux-ld: drivers/vfio/pci/virtio/main.o: in function `virtiovf_pci_bar0_rw': > main.c:(.text+0x6ec): undefined reference to `virtio_pci_admin_legacy_common_io_read' > aarch64-linux-ld: main.c:(.text+0x6f4): undefined reference to `virtio_pci_admin_legacy_device_io_read' > aarch64-linux-ld: main.c:(.text+0x7f0): undefined reference to `virtio_pci_admin_legacy_common_io_write' > aarch64-linux-ld: main.c:(.text+0x7f8): undefined reference to `virtio_pci_admin_legacy_device_io_write' > > Add another explicit dependency on the tristate symbol. > > Fixes: eb61eca0e8c3 ("vfio/virtio: Introduce a vfio driver over virtio devices") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > drivers/vfio/pci/virtio/Kconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/vfio/pci/virtio/Kconfig b/drivers/vfio/pci/virtio/Kconfig > index fc3a0be9d8d4..bd80eca4a196 100644 > --- a/drivers/vfio/pci/virtio/Kconfig > +++ b/drivers/vfio/pci/virtio/Kconfig > @@ -1,7 +1,7 @@ > # SPDX-License-Identifier: GPL-2.0-only > config VIRTIO_VFIO_PCI > tristate "VFIO support for VIRTIO NET PCI devices" > - depends on VIRTIO_PCI_ADMIN_LEGACY > + depends on VIRTIO_PCI && VIRTIO_PCI_ADMIN_LEGACY > select VFIO_PCI_CORE > help > This provides support for exposing VIRTIO NET VF devices which support Applied to vfio next branch for v6.8. Thanks! Alex
diff --git a/drivers/vfio/pci/virtio/Kconfig b/drivers/vfio/pci/virtio/Kconfig index fc3a0be9d8d4..bd80eca4a196 100644 --- a/drivers/vfio/pci/virtio/Kconfig +++ b/drivers/vfio/pci/virtio/Kconfig @@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0-only config VIRTIO_VFIO_PCI tristate "VFIO support for VIRTIO NET PCI devices" - depends on VIRTIO_PCI_ADMIN_LEGACY + depends on VIRTIO_PCI && VIRTIO_PCI_ADMIN_LEGACY select VFIO_PCI_CORE help This provides support for exposing VIRTIO NET VF devices which support