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.monja...@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

Reply via email to