[dpdk-dev] [PATCH] net/bonding: don't clear active slave count

Matan Azrad matan at mellanox.com
Wed Jun 6 15:57:51 CEST 2018


Hi Chas

From: Chas Williams
> From: "Charles (Chas) Williams" <chas3 at att.com>
> 
> When the bond PMD is stopped, the active slave count is reset.
> For 802.3ad mode this potentially leaks memory and clears state since a second
> sequential activate_slave() will occur when the bond PMD is restarted and the
> LSC callback is triggered while the active slave count is 0. To fix this, don't clear
> the active slave count when stopping. Only deactivate_slave() should be used to
> clear the slaves.
> 

Looks like it is a fix, so need fix title, CC stable and fixes line, no?

> Signed-off-by: Chas Williams <chas3 at att.com>
> ---
>  drivers/net/bonding/rte_eth_bond_pmd.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c
> b/drivers/net/bonding/rte_eth_bond_pmd.c
> index 02d94b1b1..4ae577078 100644
> --- a/drivers/net/bonding/rte_eth_bond_pmd.c
> +++ b/drivers/net/bonding/rte_eth_bond_pmd.c
> @@ -2173,7 +2173,6 @@ bond_ethdev_stop(struct rte_eth_dev *eth_dev)
>  			tlb_last_obytets[internals->active_slaves[i]] = 0;
>  	}
> 
> -	internals->active_slave_count = 0;

But why not to call deactivate_slave() for all the active slaves? 

>  	internals->link_status_polling_enabled = 0;
>  	for (i = 0; i < internals->slave_count; i++)
>  		internals->slaves[i].last_link_status = 0;
> --
> 2.14.3




More information about the dev mailing list