From 1e9221ae38dddb4abe75a7b3afaecbaa4b8e0523 Mon Sep 17 00:00:00 2001 From: Chenbo Xia Date: Tue, 27 Jul 2021 13:14:41 +0800 Subject: [PATCH] net/virtio: fix default duplex mode When virtio front-end initializes, the duplex mode should be set unknown before reading any duplex mode information from configuration space. This patch fixes the issue that duplex mode is by default set to zero, which equals ETH_LINK_HALF_DUPLEX. This will lead to duplex mode being half duplex when front-end does not have the feature named VIRTIO_NET_F_SPEED_DUPLEX. Fixes: 1357b4b36246 ("net/virtio: support Virtio link speed feature") Cc: stable@dpdk.org Signed-off-by: Chenbo Xia Reviewed-by: Maxime Coquelin --- drivers/net/virtio/virtio_ethdev.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c index a4adeec5ab..e58085a2c9 100644 --- a/drivers/net/virtio/virtio_ethdev.c +++ b/drivers/net/virtio/virtio_ethdev.c @@ -1901,6 +1901,7 @@ eth_virtio_dev_init(struct rte_eth_dev *eth_dev) if (ret < 0) return ret; hw->speed = speed; + hw->duplex = DUPLEX_UNKNOWN; /* Allocate memory for storing MAC addresses */ eth_dev->data->mac_addrs = rte_zmalloc("virtio", -- 2.20.1