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 BD0AEA00C4 for ; Thu, 29 Sep 2022 14:09:23 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B51EB42802; Thu, 29 Sep 2022 14:09:23 +0200 (CEST) Received: from mail-wr1-f48.google.com (mail-wr1-f48.google.com [209.85.221.48]) by mails.dpdk.org (Postfix) with ESMTP id B594B40395 for ; Thu, 29 Sep 2022 14:09:20 +0200 (CEST) Received: by mail-wr1-f48.google.com with SMTP id l18so1849672wrw.9 for ; Thu, 29 Sep 2022 05:09:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind.com; s=google; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date; bh=Yd3RHcszu/6nM65OKeCQZYqrhcUP1PLO5u9JKTD45dU=; b=hsYuZ78LfBuMtOzQLz6h6pQ4IVCCg249XHe8Rz8IfhibWITBrs7ErIEn0R6Flrk8KV 2bRWoC4m/NjVrKud7tOIoq0ez7N0pbO7AYnuYcPTHmKP9xIEXiZFgUVqnJT6WJtF/TtK Ws3l/uYplcX7ggcD3tnFgaIvZ86GATsuWQ1tGBppvXNnWe59AKG6u5Oi1kAbuAbr1rA8 ozaKvEDMVD8boQi1iqbcB+DUAZLYDjpOiod8WR2MvWbS8QoOtvOR5SEPIbDIcREbgSod W4iAXWTJ19OKeiAfF3QwEI2nIHpOD8FBExZ+rrs0W7njEgeAArdPV9wFdOVY1U7K6Q3y DKsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date; bh=Yd3RHcszu/6nM65OKeCQZYqrhcUP1PLO5u9JKTD45dU=; b=p6MxmxGKqYJ2ZkL2upip9rGi4SefIjARACJl+bGX2a6aQn86i9Ec6bMwgGVfbGoX9n bOYZ9b9/QjkfjfsHq0jOy/VhIThBq+EF5lsb61DRtO2pxFJAZiEQZu5aysD6xew3nOdO wm66RMOXvvTlajD6oW6pHNz41xfK45MF+tw0KePEtDpIADeDW5i4l3en4oDStjgK3L1m DdXHUuaRAtOadbGbDMCF56iNtfewkqdB+F+LTmvTUVbDu7iZD3AoFTbqblp77AYptE9b ooxLQlx7SER0AO9qRH8XCb8hCQ0YEFoOz1Fq27jEw6hzR1fc8Uv5DrVdsqfI9Zefw3qy mG+Q== X-Gm-Message-State: ACrzQf2cQate8rm2I56DXwjWBrKccg0p9fjU1N7DlJ87GW1YpvCj/uC0 jRebs0kDgZzTt+vyIGHmSNERng== X-Google-Smtp-Source: AMsMyM4CRj5pbohHHOD6w//XLCmup8b69tuGrF74IuMwuG7A2HAOPgUsTMrg7qDadoGv2B0e05PbZQ== X-Received: by 2002:a05:6000:982:b0:229:79e5:6a96 with SMTP id by2-20020a056000098200b0022979e56a96mr1996197wrb.469.1664453360442; Thu, 29 Sep 2022 05:09:20 -0700 (PDT) Received: from gojira.dev.6wind.com ([185.13.181.2]) by smtp.gmail.com with ESMTPSA id n14-20020a5d420e000000b0022cc895cc11sm3798999wrq.104.2022.09.29.05.09.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Sep 2022 05:09:20 -0700 (PDT) From: Olivier Matz To: dev@dpdk.org Cc: Qiming Yang , Wenjun Wu , Qi Zhang , Wei Zhao , stable@dpdk.org Subject: [PATCH 1/2] net/ixgbe: fix bcast packets Rx on VF after promisc removal Date: Thu, 29 Sep 2022 14:09:00 +0200 Message-Id: <20220929120901.639-2-olivier.matz@6wind.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20220929120901.639-1-olivier.matz@6wind.com> References: <20220929120901.639-1-olivier.matz@6wind.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 After a VF requested to remove the promiscuous flag on an interface, the broadcast packets are not received anymore. This breaks some protocols like ARP. In ixgbe_update_vf_xcast_mode(), we should keep the IXGBE_VMOLR_BAM bit (Broadcast Accept) on promiscuous removal. This flag is already set by default in ixgbe_vf_reset_event() on VF reset. A similar patch was accepted in Linux kernel (see link). Fixes: 0355c379b71f ("net/ixgbe: support VF promiscuous by PF driver") Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=803e9895ea2b Signed-off-by: Olivier Matz --- drivers/net/ixgbe/ixgbe_pf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ixgbe/ixgbe_pf.c b/drivers/net/ixgbe/ixgbe_pf.c index c73833b7ae..c5ef940533 100644 --- a/drivers/net/ixgbe/ixgbe_pf.c +++ b/drivers/net/ixgbe/ixgbe_pf.c @@ -747,9 +747,9 @@ ixgbe_set_vf_mc_promisc(struct rte_eth_dev *dev, uint32_t vf, uint32_t *msgbuf) switch (xcast_mode) { case IXGBEVF_XCAST_MODE_NONE: - disable = IXGBE_VMOLR_BAM | IXGBE_VMOLR_ROMPE | + disable = IXGBE_VMOLR_ROMPE | IXGBE_VMOLR_MPE | IXGBE_VMOLR_UPE | IXGBE_VMOLR_VPE; - enable = 0; + enable = IXGBE_VMOLR_BAM; break; case IXGBEVF_XCAST_MODE_MULTI: disable = IXGBE_VMOLR_MPE | IXGBE_VMOLR_UPE | IXGBE_VMOLR_VPE; -- 2.30.2