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 3ECF9A0C3F for ; Sat, 12 Jun 2021 01:17:36 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 32B04406A2; Sat, 12 Jun 2021 01:17:36 +0200 (CEST) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2084.outbound.protection.outlook.com [40.107.237.84]) by mails.dpdk.org (Postfix) with ESMTP id 6736C4003F for ; Sat, 12 Jun 2021 01:17:34 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=V72bJ0SVtsuW8LSRGi14LQgWg6KIvPsQt1gGzZuMiP399ip7LT1Nz6OiKgqDqGnhxF4y3RYzAA3h34gO3mgv3gylmcig+p7EMprdGSQYVFToeyE3qBsdPnR9hpQjTmflT8CSAaxFnQCBaOR+CcW2PAa0kUCMrBZQWSPYaau+OKEYSo8H02JmVPlgVsDQNCtS3yxTSe3SnTo8Gx+NNxgb9SBDYL36yWzmnfB0SYHRL6Xd2llz+SjdReb5Kqamd3VWmeaHAZJCRGAjTOpO1SKk6MC71DXOkWwgJtsIbAXVKBEJTGnRzSVDsmbooTJPtgtXr3nSGl7xu5xarQ1B68g/JQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=48cjK7ixxmBHlywRZTOg9L76jbGlqvKWcawEgrEYWnA=; b=nzVeNYAahSb+924p1UxJSs6CLbf/yFXYSwXbpwpmK3/gFGbob+uldh8QA7kRSJwOOQxYiBNdmSaVcEuJEJYx+wwgrqewrlYNdCrlCECkNgmk73edGIgSzfcwztqmn7j4hllAOM3UBlH6g25It2O1rWL4omOw4v6hAs+alB8lmsDxBKbbYc4oos6jKPIFZh0CZ0kSR1efwjnpLMreitbtUbX0t8aZbbqQTGCec60SNYhKL+363ZQyC4d328boyp14vyeKW1v2OlrnldqdULMbJdX1DVHdArW4kxF6AHmDSnpkii3BeLhY0QG6b9urPsyqLf7vTxPh2Yi5wydbFrk//A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.112.34) smtp.rcpttodomain=intel.com smtp.mailfrom=nvidia.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=48cjK7ixxmBHlywRZTOg9L76jbGlqvKWcawEgrEYWnA=; b=DqcKt5aZuM9k61UckODXFHkokPlES3mO1LgTlhjDu5h7fP5yV7bHyxA1HYi4Z1i0Qlmsi3r/r+TK6lgOfZ+QneL5ufJET6bKtplPhw83s+7H+PCCUvjhEQNO7A/UYPP8H4oqg0x2OPRoFOXSs/LKs+DDRgfBA/d9a5M9co0Adml4Mc5uh48z4IAjExGnBChGv3bHhg0Ln2+2LjIxhLPKUHxL3Hpv6v0Oebz03lcYyiQDDmHZFue0qLQWIe4wdICQ+rGo1guhfg1Q85TBkX4/p4s7vRTE870oAxgAWPEUALfxK1qOyH/KL2WxMwWBQ5/3bsWv71uDq8yIq1yPnmXNKw== Received: from BN9PR03CA0455.namprd03.prod.outlook.com (2603:10b6:408:139::10) by MWHPR12MB1837.namprd12.prod.outlook.com (2603:10b6:300:113::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4219.23; Fri, 11 Jun 2021 23:17:32 +0000 Received: from BN8NAM11FT060.eop-nam11.prod.protection.outlook.com (2603:10b6:408:139:cafe::fe) by BN9PR03CA0455.outlook.office365.com (2603:10b6:408:139::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4219.20 via Frontend Transport; Fri, 11 Jun 2021 23:17:32 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.34) smtp.mailfrom=nvidia.com; intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.112.34 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.112.34; helo=mail.nvidia.com; Received: from mail.nvidia.com (216.228.112.34) by BN8NAM11FT060.mail.protection.outlook.com (10.13.177.211) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4219.21 via Frontend Transport; Fri, 11 Jun 2021 23:17:32 +0000 Received: from nvidia.com (172.20.187.6) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Fri, 11 Jun 2021 23:17:29 +0000 From: Xueming Li To: Alvin Zhang CC: Luca Boccassi , Beilei Xing , dpdk stable Date: Sat, 12 Jun 2021 07:03:49 +0800 Message-ID: <20210611230433.8208-135-xuemingl@nvidia.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210611230433.8208-1-xuemingl@nvidia.com> References: <20210510160258.30982-229-xuemingl@nvidia.com> <20210611230433.8208-1-xuemingl@nvidia.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [172.20.187.6] X-ClientProxiedBy: HQMAIL105.nvidia.com (172.20.187.12) To HQMAIL107.nvidia.com (172.20.187.13) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 989a27c3-87c3-49d9-828c-08d92d2f1703 X-MS-TrafficTypeDiagnostic: MWHPR12MB1837: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 218yNfl5SLeipyd836ubAogQKTEwK4jwoABbYQft9uS2iZNwguZzehCUfMscK4Zi7JVQaXgf7BEO4fhA0+bPzBr4jaG37V8VFTtd1xZLZkBlWt864TxgFLq5HdYIM50THXK08j5Ncrp4pmRHVUptcEjTtNckRHok979izgb08IK5Oyv8c7uFzTI1qLulk8tUwBI7QaSK2QKKFYlqKzqN54JeEZ42Ue/c3ZB6pRdlAGTtg6nKW8T0VqAc8YMB3hYBYTkQ10lQamGACMY0wRZewyk9hL6GzvqfN5o1Tc1v85tgEllPU/HIDUJnb3oCl4l9xOviey06rbo0f1ddImCykFKJcDXqK/cYFmqYZadS+czd8AtiXtxYMhdGEqYS0sTccmyG9P03ppBSKv7MzoNXVzS5Y1ARmQT7PUQZNrznwAtFBm0m0b6HC9kwgi02rpyKNpjgZPyoRNR/WL9ueLCyyhaSckA24mwn86MbzVbnx8CeVsf2kPHJlNLPrHA0QB9pjM9WdmrV7XFQu5ZSdoYnYYXaFPwt43zsJGnPBogBRimsXY68G9vLL4HDhGKTH50cwFKVntLj3ZV8g16FEpQq2pyAtH4PdSbyVSAH3dm665K9PlpqPZgbifN+QtEFN+sk1yXZbofrEbl5uyfnI7tXbAfKoM8SV8FwqfjfosGtfmUe8ZzMWtq8KD6LLDfKaNYmZAamGbPuXrqX25pEzYnAdSTYngX1nRxA36LrphZcFenM0NYJYV1oyLfv+chO+7iXQ44BoP9VWY5ui1IcEH+dZ1Ro+UvkJpahEU1Xymh2dnkezW26bE0T0oLzxOyOvS1u X-Forefront-Antispam-Report: CIP:216.228.112.34; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:schybrid03.nvidia.com; CAT:NONE; SFS:(4636009)(376002)(39860400002)(346002)(396003)(136003)(36840700001)(46966006)(7636003)(82310400003)(16526019)(82740400003)(356005)(47076005)(6666004)(186003)(86362001)(5660300002)(36756003)(83380400001)(36860700001)(26005)(53546011)(55016002)(6286002)(8936002)(54906003)(316002)(2906002)(966005)(8676002)(70206006)(7696005)(478600001)(4326008)(6916009)(1076003)(336012)(70586007)(36906005)(426003)(2616005); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Jun 2021 23:17:32.0625 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 989a27c3-87c3-49d9-828c-08d92d2f1703 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.112.34]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT060.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR12MB1837 Subject: [dpdk-stable] patch 'net/i40e: fix VF RSS configuration' has been queued to stable release 20.11.2 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 Sender: "stable" Hi, FYI, your patch has been queued to stable release 20.11.2 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 06/14/21. 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/steevenlee/dpdk This queued commit can be viewed at: https://github.com/steevenlee/dpdk/commit/e0305fc830c22d7c4ca253269c704c03efe968f4 Thanks. Xueming Li --- >From e0305fc830c22d7c4ca253269c704c03efe968f4 Mon Sep 17 00:00:00 2001 From: Alvin Zhang Date: Wed, 12 May 2021 17:23:11 +0800 Subject: [PATCH] net/i40e: fix VF RSS configuration Cc: Luca Boccassi [ upstream commit 7594f2dac4489cde35f7088a46b8133fd4738a4a ] The kernel driver supports VF RSS configuration message "VIRTCHNL_OP_GET_RSS_HENA_CAPS and VIRTCHNL_OP_SET_RSS_HENA", this patch adds PMD support for these messages. Fixes: b81295c474b0 ("net/i40e: add user callback for VF to PF message") Signed-off-by: Alvin Zhang Acked-by: Beilei Xing --- drivers/net/i40e/i40e_pf.c | 61 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/drivers/net/i40e/i40e_pf.c b/drivers/net/i40e/i40e_pf.c index d6f5698342..0a2fa17580 100644 --- a/drivers/net/i40e/i40e_pf.c +++ b/drivers/net/i40e/i40e_pf.c @@ -29,6 +29,28 @@ #define I40E_CFG_CRCSTRIP_DEFAULT 1 +/* Supported RSS offloads */ +#define I40E_DEFAULT_RSS_HENA ( \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_UDP) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_SCTP) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_TCP) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_OTHER) | \ + BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV4) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_UDP) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_TCP) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_SCTP) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_OTHER) | \ + BIT_ULL(I40E_FILTER_PCTYPE_FRAG_IPV6) | \ + BIT_ULL(I40E_FILTER_PCTYPE_L2_PAYLOAD)) + +#define I40E_DEFAULT_RSS_HENA_EXPANDED (I40E_DEFAULT_RSS_HENA | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV4_TCP_SYN_NO_ACK) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_UNICAST_IPV4_UDP) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_MULTICAST_IPV4_UDP) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_IPV6_TCP_SYN_NO_ACK) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_UNICAST_IPV6_UDP) | \ + BIT_ULL(I40E_FILTER_PCTYPE_NONF_MULTICAST_IPV6_UDP)) + static int i40e_pf_host_switch_queues(struct i40e_pf_vf *vf, struct virtchnl_queue_select *qsel, @@ -1288,6 +1310,37 @@ i40e_pf_host_process_cmd_request_queues(struct i40e_pf_vf *vf, uint8_t *msg) (u8 *)vfres, sizeof(*vfres)); } +static void +i40e_pf_host_process_cmd_get_rss_hena(struct i40e_pf_vf *vf) +{ + struct virtchnl_rss_hena vrh = {0}; + struct i40e_pf *pf = vf->pf; + + if (pf->adapter->hw.mac.type == I40E_MAC_X722) + vrh.hena = I40E_DEFAULT_RSS_HENA_EXPANDED; + else + vrh.hena = I40E_DEFAULT_RSS_HENA; + + i40e_pf_host_send_msg_to_vf(vf, VIRTCHNL_OP_GET_RSS_HENA_CAPS, + I40E_SUCCESS, (uint8_t *)&vrh, sizeof(vrh)); +} + +static void +i40e_pf_host_process_cmd_set_rss_hena(struct i40e_pf_vf *vf, uint8_t *msg) +{ + struct virtchnl_rss_hena *vrh = + (struct virtchnl_rss_hena *)msg; + struct i40e_hw *hw = &vf->pf->adapter->hw; + + i40e_write_rx_ctl(hw, I40E_VFQF_HENA1(0, vf->vf_idx), + (uint32_t)vrh->hena); + i40e_write_rx_ctl(hw, I40E_VFQF_HENA1(1, vf->vf_idx), + (uint32_t)(vrh->hena >> 32)); + + i40e_pf_host_send_msg_to_vf(vf, VIRTCHNL_OP_SET_RSS_HENA, + I40E_SUCCESS, NULL, 0); +} + void i40e_pf_host_handle_vf_msg(struct rte_eth_dev *dev, uint16_t abs_vf_id, uint32_t opcode, @@ -1458,6 +1511,14 @@ i40e_pf_host_handle_vf_msg(struct rte_eth_dev *dev, PMD_DRV_LOG(INFO, "OP_REQUEST_QUEUES received"); i40e_pf_host_process_cmd_request_queues(vf, msg); break; + case VIRTCHNL_OP_GET_RSS_HENA_CAPS: + PMD_DRV_LOG(INFO, "OP_GET_RSS_HENA_CAPS received"); + i40e_pf_host_process_cmd_get_rss_hena(vf); + break; + case VIRTCHNL_OP_SET_RSS_HENA: + PMD_DRV_LOG(INFO, "OP_SET_RSS_HENA received"); + i40e_pf_host_process_cmd_set_rss_hena(vf, msg); + break; /* Don't add command supported below, which will * return an error code. -- 2.25.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2021-06-12 06:54:00.040097000 +0800 +++ 0135-net-i40e-fix-VF-RSS-configuration.patch 2021-06-12 06:53:56.580000000 +0800 @@ -1 +1 @@ -From 7594f2dac4489cde35f7088a46b8133fd4738a4a Mon Sep 17 00:00:00 2001 +From e0305fc830c22d7c4ca253269c704c03efe968f4 Mon Sep 17 00:00:00 2001 @@ -4,0 +5,3 @@ +Cc: Luca Boccassi + +[ upstream commit 7594f2dac4489cde35f7088a46b8133fd4738a4a ] @@ -11 +13,0 @@ -Cc: stable@dpdk.org @@ -20 +22 @@ -index 9804ed4253..e2d8b2b5f7 100644 +index d6f5698342..0a2fa17580 100644