[dpdk-dev] [PATCH v2] net/qede: fix regression introduced by b10231aed1ed
Igor Russkikh
irusskikh at marvell.com
Mon Jan 4 13:44:41 CET 2021
> When calling rte_eth_promiscuous_enable(port_id) followed by
> rte_eth_allmulticast_enable(port_id), the port is not in promisc mode
> anymore. This patch ensures that promisc mode takes precedence over
> allmulticast mode fixing the regression introduced by b10231aed1ed.
>
> Signed-off-by: Balazs Nemeth <bnemeth at redhat.com>
> ---
> drivers/net/qede/qede_ethdev.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/net/qede/qede_ethdev.c
> b/drivers/net/qede/qede_ethdev.c
> index 549013557..3bec62d82 100644
> --- a/drivers/net/qede/qede_ethdev.c
> +++ b/drivers/net/qede/qede_ethdev.c
> @@ -1885,6 +1885,8 @@ static int qede_allmulticast_enable(struct
> rte_eth_dev *eth_dev)
> QED_FILTER_RX_MODE_TYPE_MULTI_PROMISC;
> enum _ecore_status_t ecore_status;
>
> + if (rte_eth_promiscuous_get(eth_dev->data->port_id) == 1)
> + type = QED_FILTER_RX_MODE_TYPE_PROMISC;
> ecore_status = qed_configure_filter_rx_mode(eth_dev, type);
>
> return ecore_status >= ECORE_SUCCESS ? 0 : -EAGAIN;
Hi Balazs, thanks for posting!
I think we need Fixes tag here.
Devendra, could you please check if thats enough? May be we should consider
more of internal states here? What if we'll do promisc_disable() after that?
Will allmulti state persist?
Igor
More information about the dev
mailing list