Re: [PATCH] vfio: fix virtio-pci dependency
On Tue, 9 Jan 2024 08:57:19 +0100 Arnd Bergmann wrote: > From: Arnd Bergmann > > 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 > --- > 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
RE: [PATCH] vfio: fix virtio-pci dependency
> From: Arnd Bergmann > Sent: Tuesday, January 9, 2024 3:57 PM > > From: Arnd Bergmann > > 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 Reviewed-by: Kevin Tian
[PATCH] vfio: fix virtio-pci dependency
From: Arnd Bergmann 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 --- 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 -- 2.39.2