On 7/27/21 7:14 AM, Chenbo Xia wrote:
> 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 fron-end does not have the feature
> named VIRTIO_NET_F_SPEED_DUPLEX.
>
> Fixes: 1357b4b36246 ("net/virtio: support Virtio link speed feature")
> Cc: sta...@dpdk.org
>
> Signed-off-by: Chenbo Xia <chenbo....@intel.com>
> ---
> 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 72d3dda71f..9061db4e41 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",
>
Reviewed-by: Maxime Coquelin <maxime.coque...@redhat.com>
Thanks,
Maxime