[dpdk-dev] [PATCH] net/virtio: fix build without virtio-user

Thomas Monjalon thomas.monjalon at 6wind.com
Tue Jan 17 23:22:41 CET 2017


When CONFIG_RTE_VIRTIO_USER is disabled (default on FreeBSD),
the virtio driver cannot be compiled:

librte_pmd_virtio.a(virtio_ethdev.o): In function `eth_virtio_dev_init':
(.text+0x1eba): undefined reference to `virtio_user_ops'

Signed-off-by: Thomas Monjalon <thomas.monjalon at 6wind.com>
---
Already applied on mainline git when sending,
in order to allow CI on FreeBSD.
---
 drivers/net/virtio/virtio_ethdev.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c
index 0fe99d5..1d51942 100644
--- a/drivers/net/virtio/virtio_ethdev.c
+++ b/drivers/net/virtio/virtio_ethdev.c
@@ -1461,9 +1461,12 @@ virtio_remap_pci(struct rte_pci_device *pci_dev, struct virtio_hw *hw)
 static void
 virtio_set_vtpci_ops(struct virtio_hw *hw)
 {
+#ifdef RTE_VIRTIO_USER
 	if (hw->virtio_user_dev)
 		VTPCI_OPS(hw) = &virtio_user_ops;
-	else if (hw->modern)
+	else
+#endif
+	if (hw->modern)
 		VTPCI_OPS(hw) = &modern_ops;
 	else
 		VTPCI_OPS(hw) = &legacy_ops;
-- 
2.7.0



More information about the dev mailing list