On 3/10/2023 4:41 AM, Kaiwen Deng wrote:
> The bond port is failed to forward packets in Link Aggregation
> 802.3AD(4) mode. Because bond devices get LACP packets from
> rx_ring instead of tx_ring.
>
> This commit will get LACP packets from tx_ring instead.
>
> Fixes: 112891cd27e5 ("net/bonding: add dedicated HW queues for LACP control")
> Cc: [email protected]
>
Fixes commit is from 2017, was 802.3AD mode broken since that time?
Or is this for a specific use case?
> Signed-off-by: Kaiwen Deng <[email protected]>
> ---
> drivers/net/bonding/rte_eth_bond_8023ad.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/bonding/rte_eth_bond_8023ad.c
> b/drivers/net/bonding/rte_eth_bond_8023ad.c
> index 4a266bb2ca..b585752b00 100644
> --- a/drivers/net/bonding/rte_eth_bond_8023ad.c
> +++ b/drivers/net/bonding/rte_eth_bond_8023ad.c
> @@ -941,7 +941,7 @@ bond_mode_8023ad_periodic_cb(void *arg)
> /* Find LACP packet to this port. Do not check subtype,
> * it is done in function that queued packet
> */
> - int retval = rte_ring_dequeue(port->rx_ring,
> + int retval = rte_ring_dequeue(port->tx_ring,
> (void **)&lacp_pkt);
>
> if (retval != 0)