From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3222A45804 for ; Fri, 23 Aug 2024 18:23:12 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2CFE34337C; Fri, 23 Aug 2024 18:23:12 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mails.dpdk.org (Postfix) with ESMTP id 8B7E04336F for ; Fri, 23 Aug 2024 18:23:10 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1724430190; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=sZ+VeI8KjDj/FONW2J2cimJufbeOK5TYsh7tmAl4qCo=; b=GhPSz17RnjSYL34gj4+vc9lACYT+OxdikkCjCix201kAdNJECvKX7L4C7lcrekcGiInrQH M8RYRkAaCCaMM28UZZVd8MMccSCUMC4NOMn23fB/MuehYIpR8vH68HjWBHuJez6ttEKwc/ 2qpCAexjbObNNklMRsmsSopSoFCaQ+k= Received: from mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-184-c6dcSUnGPBmTIyPHukjOZg-1; Fri, 23 Aug 2024 12:23:09 -0400 X-MC-Unique: c6dcSUnGPBmTIyPHukjOZg-1 Received: from mx-prod-int-05.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-05.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.17]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id DED9C19560B0; Fri, 23 Aug 2024 16:23:07 +0000 (UTC) Received: from rh.redhat.com (unknown [10.39.193.224]) by mx-prod-int-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id B10B31956053; Fri, 23 Aug 2024 16:23:06 +0000 (UTC) From: Kevin Traynor To: Jiawen Wu Cc: dpdk stable Subject: patch 'net/txgbe: fix VF promiscuous and allmulticast' has been queued to stable release 21.11.8 Date: Fri, 23 Aug 2024 17:18:47 +0100 Message-ID: <20240823161929.1004778-99-ktraynor@redhat.com> In-Reply-To: <20240823161929.1004778-1-ktraynor@redhat.com> References: <20240823161929.1004778-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.0 on 10.30.177.17 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII"; x-default=true X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Hi, FYI, your patch has been queued to stable release 21.11.8 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 08/28/24. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable/commit/f3924093d2c22043d5b009e8bc6e912cd80dfea4 Thanks. Kevin --- >From f3924093d2c22043d5b009e8bc6e912cd80dfea4 Mon Sep 17 00:00:00 2001 From: Jiawen Wu Date: Tue, 18 Jun 2024 15:11:37 +0800 Subject: [PATCH] net/txgbe: fix VF promiscuous and allmulticast [ upstream commit 055a51ff85112200706a07e99b92c9459774080a ] The configuration of allmulti and promiscuous modes conflicts together. For instance, if we enable promiscuous mode, then enable and disable allmulti, then the promiscuous mode is wrongly disabled. Fix this behavior by: - doing nothing when we set/unset allmulti if promiscuous mode is on - restorting the proper mode (none or allmulti) when we disable promiscuous mode Fixes: 29072d593fe4 ("net/txgbe: support VF promiscuous and allmulticast") Signed-off-by: Jiawen Wu --- drivers/net/txgbe/txgbe_ethdev_vf.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/drivers/net/txgbe/txgbe_ethdev_vf.c b/drivers/net/txgbe/txgbe_ethdev_vf.c index f52cd8bc19..037b7db544 100644 --- a/drivers/net/txgbe/txgbe_ethdev_vf.c +++ b/drivers/net/txgbe/txgbe_ethdev_vf.c @@ -1198,7 +1198,11 @@ txgbevf_dev_promiscuous_disable(struct rte_eth_dev *dev) { struct txgbe_hw *hw = TXGBE_DEV_HW(dev); + int mode = TXGBEVF_XCAST_MODE_NONE; int ret; - switch (hw->mac.update_xcast_mode(hw, TXGBEVF_XCAST_MODE_NONE)) { + if (dev->data->all_multicast) + mode = TXGBEVF_XCAST_MODE_ALLMULTI; + + switch (hw->mac.update_xcast_mode(hw, mode)) { case 0: ret = 0; @@ -1221,4 +1225,7 @@ txgbevf_dev_allmulticast_enable(struct rte_eth_dev *dev) int ret; + if (dev->data->promiscuous) + return 0; + switch (hw->mac.update_xcast_mode(hw, TXGBEVF_XCAST_MODE_ALLMULTI)) { case 0: @@ -1242,4 +1249,7 @@ txgbevf_dev_allmulticast_disable(struct rte_eth_dev *dev) int ret; + if (dev->data->promiscuous) + return 0; + switch (hw->mac.update_xcast_mode(hw, TXGBEVF_XCAST_MODE_MULTI)) { case 0: -- 2.46.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2024-08-23 17:18:12.640442799 +0100 +++ 0099-net-txgbe-fix-VF-promiscuous-and-allmulticast.patch 2024-08-23 17:18:09.823430465 +0100 @@ -1 +1 @@ -From 055a51ff85112200706a07e99b92c9459774080a Mon Sep 17 00:00:00 2001 +From f3924093d2c22043d5b009e8bc6e912cd80dfea4 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 055a51ff85112200706a07e99b92c9459774080a ] + @@ -16 +17,0 @@ -Cc: stable@dpdk.org @@ -24 +25 @@ -index ec40419289..6ac34058ab 100644 +index f52cd8bc19..037b7db544 100644 @@ -27 +28 @@ -@@ -1203,7 +1203,11 @@ txgbevf_dev_promiscuous_disable(struct rte_eth_dev *dev) +@@ -1198,7 +1198,11 @@ txgbevf_dev_promiscuous_disable(struct rte_eth_dev *dev) @@ -40 +41 @@ -@@ -1226,4 +1230,7 @@ txgbevf_dev_allmulticast_enable(struct rte_eth_dev *dev) +@@ -1221,4 +1225,7 @@ txgbevf_dev_allmulticast_enable(struct rte_eth_dev *dev) @@ -48 +49 @@ -@@ -1247,4 +1254,7 @@ txgbevf_dev_allmulticast_disable(struct rte_eth_dev *dev) +@@ -1242,4 +1249,7 @@ txgbevf_dev_allmulticast_disable(struct rte_eth_dev *dev)