From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 11FF4A0350; Fri, 26 Jun 2020 05:42:25 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 489B71B13C; Fri, 26 Jun 2020 05:42:24 +0200 (CEST) Received: from mail-io1-f66.google.com (mail-io1-f66.google.com [209.85.166.66]) by dpdk.org (Postfix) with ESMTP id 259A9DE0; Fri, 26 Jun 2020 05:42:22 +0200 (CEST) Received: by mail-io1-f66.google.com with SMTP id h4so8383583ior.5; Thu, 25 Jun 2020 20:42:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=hzaWkH4O6y/9+I0AVzLnNsIBg+9iyHjIM9ddZwwNxok=; b=aDF4Wm6RiUgSNUxGgTwAbnhO3qGfqU2HhppVmfrttWIQ8D+4p3p42Dza04qqR7+t4D mT7ddrbInEMr/jscQNiGhlCKskzIcQUuN/7PXdQOLFKedHpa1TvvM3jWjclTSWq66b9p EpRsiMjGYWupvskIlzXY7P1OISszOq/e6MGfMSQn/2TUJJA1WC6+Dihue6OOc285NoyY uz37eVhxfcPqfSb6Va/vvYkcF3FOmGm2aANPfZ2xBbsoKR/H/fRWNri9L346cvpOr73s H/WWT1oHTShjqBGCIjlwL8QgRxVPSd9zgLkmWudKkbvyrfdfml/kHdo8ZY6+P9DhLUPe TreA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=hzaWkH4O6y/9+I0AVzLnNsIBg+9iyHjIM9ddZwwNxok=; b=Jhgyd6IRnBMszzFM/G0CrAoRCGnsdsW90nhrXrw0U8ih8udmhSobDpk+D4nT6mgOSn +1B+JhPdb+tF+xPOZY6s9dTU3qWk+rOceWkmiLznCjV4AEwLXeNveCkQfQreMZmPQ4d1 AJAdKygJiLi9wKjCnQLvdGffSRzqTAMLI9cJMQEVBaq3bLsIgI3YV1Uau64eG55/EkRU r9riCAs4Uz7s4Iy5fCa28kRaQqn9s7JgK/RoRHfZB8f+hbx1bI1ae6ELW9zRktiXtXE5 F6qTDm20zK24O/hiLGSUhtri88p4QDV3RqL2av5mlWtxVEebqXKMb0e2PQeZESc/Eq0L BsCQ== X-Gm-Message-State: AOAM5300UxlXesjTA3N/3c3n/6RUCFi3hNpzfLl6rTHaFqSmyFKngmTn kekbOlDeBax39SS5Sdy0uVaxnyt054hRiEEXDSU= X-Google-Smtp-Source: ABdhPJye45QJetwm7lxUIXTwXSEPDPYDa/YDC4rF53Ojz7VcCFS82bYguA34sJEOVU+zxpb347H1EjArK/DhwffYCHM= X-Received: by 2002:a05:6602:2dca:: with SMTP id l10mr1341351iow.163.1593142941261; Thu, 25 Jun 2020 20:42:21 -0700 (PDT) MIME-Version: 1.0 References: <1592468155-19543-1-git-send-email-dsinghrawat@marvell.com> In-Reply-To: <1592468155-19543-1-git-send-email-dsinghrawat@marvell.com> From: Jerin Jacob Date: Fri, 26 Jun 2020 09:12:03 +0530 Message-ID: To: Devendra Singh Rawat Cc: dpdk-dev , Jerin Jacob , Ferruh Yigit , GR-Everest-DPDK-Dev , dpdk stable , Igor Russkikh , Rasesh Mody Content-Type: text/plain; charset="UTF-8" Subject: Re: [dpdk-dev] [PATCH] net/qede: fix multicast pkts drop in promisc mode X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Thu, Jun 18, 2020 at 1:40 PM Devendra Singh Rawat wrote: > > After enabling promiscuous mode all packets whose destination MAC address > is a multicast address were being dropped. This fix configures H/W to > receive all traffic in promiscuous mode. Promiscuous mode also overrides > allmulticast mode on/off status. > > Fixes: 40e9f6fc1558 ("net/qede: enable VF-VF traffic with unmatched dest address") > Cc: stable@dpdk.org > > Signed-off-by: Devendra Singh Rawat > Signed-off-by: Igor Russkikh > Signed-off-by: Rasesh Mody Applied to dpdk-next-net-mrvl/master. Thanks > --- > drivers/net/qede/qede_ethdev.c | 25 +++++++++---------------- > 1 file changed, 9 insertions(+), 16 deletions(-) > > diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c > index c4f8f12..84d2d2c 100644 > --- a/drivers/net/qede/qede_ethdev.c > +++ b/drivers/net/qede/qede_ethdev.c > @@ -625,17 +625,16 @@ int qede_enable_tpa(struct rte_eth_dev *eth_dev, bool flg) > ECORE_ACCEPT_BCAST; > > if (type == QED_FILTER_RX_MODE_TYPE_PROMISC) { > - flags.rx_accept_filter |= ECORE_ACCEPT_UCAST_UNMATCHED; > + flags.rx_accept_filter |= (ECORE_ACCEPT_UCAST_UNMATCHED | > + ECORE_ACCEPT_MCAST_UNMATCHED); > if (IS_VF(edev)) { > - flags.tx_accept_filter |= ECORE_ACCEPT_UCAST_UNMATCHED; > - DP_INFO(edev, "Enabling Tx unmatched flag for VF\n"); > + flags.tx_accept_filter |= > + (ECORE_ACCEPT_UCAST_UNMATCHED | > + ECORE_ACCEPT_MCAST_UNMATCHED); > + DP_INFO(edev, "Enabling Tx unmatched flags for VF\n"); > } > } else if (type == QED_FILTER_RX_MODE_TYPE_MULTI_PROMISC) { > flags.rx_accept_filter |= ECORE_ACCEPT_MCAST_UNMATCHED; > - } else if (type == (QED_FILTER_RX_MODE_TYPE_MULTI_PROMISC | > - QED_FILTER_RX_MODE_TYPE_PROMISC)) { > - flags.rx_accept_filter |= ECORE_ACCEPT_UCAST_UNMATCHED | > - ECORE_ACCEPT_MCAST_UNMATCHED; > } > > return ecore_filter_accept_cmd(edev, 0, flags, false, false, > @@ -1502,16 +1501,13 @@ static int qede_dev_configure(struct rte_eth_dev *eth_dev) > > static int qede_promiscuous_enable(struct rte_eth_dev *eth_dev) > { > - struct qede_dev *qdev = eth_dev->data->dev_private; > - struct ecore_dev *edev = &qdev->edev; > - enum qed_filter_rx_mode_type type = QED_FILTER_RX_MODE_TYPE_PROMISC; > enum _ecore_status_t ecore_status; > + struct qede_dev *qdev = QEDE_INIT_QDEV(eth_dev); > + struct ecore_dev *edev = QEDE_INIT_EDEV(qdev); > + enum qed_filter_rx_mode_type type = QED_FILTER_RX_MODE_TYPE_PROMISC; > > PMD_INIT_FUNC_TRACE(edev); > > - if (rte_eth_allmulticast_get(eth_dev->data->port_id) == 1) > - type |= QED_FILTER_RX_MODE_TYPE_MULTI_PROMISC; > - > ecore_status = qed_configure_filter_rx_mode(eth_dev, type); > > return ecore_status >= ECORE_SUCCESS ? 0 : -EAGAIN; > @@ -1885,9 +1881,6 @@ 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; > -- > 1.8.3.1 >