From patchwork Wed Mar 28 00:15:53 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Mody, Rasesh" X-Patchwork-Id: 36591 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 9C571AAE9; Wed, 28 Mar 2018 02:16:18 +0200 (CEST) Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0079.outbound.protection.outlook.com [104.47.32.79]) by dpdk.org (Postfix) with ESMTP id 572CFAAC8 for ; Wed, 28 Mar 2018 02:16:16 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=XsenSkLIjF8glfMpXaMTZ8XTB9eSqUnMmuwGaJnHD4Y=; b=hCKt7EGAZOPxMUQ8W0BSKIULjx5q466DS4qCU0QIGhGJNZI+EbnzgIsNqKjs8k2fiT/zLWJwimTeWMkLalnvaYNVHY1YQCM04hr3ZR5lHDRCaTy+/QWDLsUcMZWbVSRoo982F1R+CvM2tNy+w4QfVe7HzbnKXGTX79NNyCgTpnE= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Rasesh.Mody@cavium.com; Received: from cavium.com (198.186.0.2) by CY4PR0701MB3665.namprd07.prod.outlook.com (2603:10b6:910:93::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.631.10; Wed, 28 Mar 2018 00:16:14 +0000 From: Rasesh Mody To: dev@dpdk.org Cc: Rasesh Mody , ferruh.yigit@intel.com, Dept-EngDPDKDev@cavium.com Date: Tue, 27 Mar 2018 17:15:53 -0700 Message-Id: <1522196155-30972-3-git-send-email-rasesh.mody@cavium.com> X-Mailer: git-send-email 1.7.10.3 In-Reply-To: <1522196155-30972-1-git-send-email-rasesh.mody@cavium.com> References: <1522196155-30972-1-git-send-email-rasesh.mody@cavium.com> MIME-Version: 1.0 X-Originating-IP: [198.186.0.2] X-ClientProxiedBy: CO2PR05CA0102.namprd05.prod.outlook.com (2603:10b6:104:1::28) To CY4PR0701MB3665.namprd07.prod.outlook.com (2603:10b6:910:93::16) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: cefa0bc8-efee-4ae1-a97c-08d594411ead X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4604075)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:CY4PR0701MB3665; X-Microsoft-Exchange-Diagnostics: 1; CY4PR0701MB3665; 3:7rIQ14tcByfcLk4EtVNldqiXv8Vv9kltsQTQ4ResVb97DR7ju27VQRu138f2aHx13J5hl9sMW11lbMyTTd5F910uQvl4ZT6o1cnE+Wkfq1PC2buwsxsarbI3IMPmcU/by+YnF9iXQd2Y1smLpHTcHnk6JU7mvozSKIEgA7w7K6iRFJah7yJo38rGQbpuTlhqF1r6Wyfy57DZluoT8QWiUNug+bA/m96OtLaOWZjVC0en3s8svCktqAscV8In3A51; 25:E3TKb5YAeqU/JNNEXClbB1T30LyX5LWKtDkLE9eITUOoITh28lDugbDZQy+urY/Nx/U0zidDPDjq6xnCxYlLOOW+HP086Mc5wIqrOqyxz+EoQoufHSXC/VOOeT1nQvNgHRYMY1kv/IkRywCQFSMaAimjGoenRGn2tJdveUoN+vJlEB0qszGxLZT+Nj2Wol3o9cuV48aY25nIi8KO1XqA4Bj7WoT0WRTSRW/XCEophmxlwoLwGyl3jcVvwkOqwFxmqT+r038Ui+W77W7IGkeC2rbo9fSbZ7yhoieGyzCKGqUzx/Tvr+cFA9JwAYlJFrKLisvRNYCFXCUpE3QDi3pl1w==; 31:sL0/vmrJ0RikqaUiSpkRtcXHeUnIkkocxOwLc3wgpPeN9HeHaovtF38H5eOplAxMvqNGMb43JMabV6ulW+UFcpI7gno1mhrz2z/lpAxkd/QLJBASfAvgVqWlk1jG5Qv3KETddkTebnkWAG+IteTXa2+ukO8nr9IYIzBMtOrvxtqTvhcucMRvrJ/3UMSq01IuVWjQB4m7rD6HtQjI1B6LVCnHz0QlhoCXcKezDVQ4gO4= X-MS-TrafficTypeDiagnostic: CY4PR0701MB3665: X-Microsoft-Exchange-Diagnostics: 1; CY4PR0701MB3665; 20:ujgh+363upyQ0MPsPSt7t/UxJJ+aXnpfeMdp4tfLv6KeYK2jB3z/Nxwt+o50DaPXAYR2e8FML+eEs/ZCd+gQOLyjx4ncBbALpTHBngcMesqc3Pn4VPkNLkloUWONgW4W1DjS+CnfGp4lc2VuxiYv+mYKiNJOiZ/uuWZWgJ2qChoGWJPkm39InYNN0ZGFCJ+ElmxTVxVzb+cm0AGq7qJn3edbPSduvN/vcnjKaGSl+3425TSsZDmZx0IENsoWzWlgLfqLFgAzhv9mKTxEJDM8werpCcGMKqyDAjtfEMPQGriI03pWRUnNKA8bXSIM3Z4GN0x4BrF6QdM9gJY6mZcp9891sj/+Ee+3WSpijacoykOmWwdwZZC09/gFTgru5Kb7exLR9HZldb48TxPGdhVyAX8f0Z2GxgkKL8s5AhAqsSSSm3pTIZntJHzXvVE7oMMg4pRQMBcYZF/sIBWoWkUaV3rjS2evmBSe0QLFORr87ssIOik9jm46hjSNYrhNRDih; 4:25A9A84uw08C0HMvWZKFv9NiCT3UkcOsQ7S/9zCDAgNPcf2JNsMbipSRNni9hsmx3YduhemM9zjAEQvG7VIXOkv/A2R+cAWIEzjmetFMjYyxRm642523TeaAzntk9yarNfofnc7X3zOahx0OgAfs7nkN+HpA/ZiDPaRubTQrHFQ5xYMEvlAOh4zAPvg2OLALCNvjrKT4/ne3ZZJGdg8YFkX0kn4bI8TogYyO4Rf16g9+0aLMPj+5kqvoQ6U0FysbLFfGupER6MEzyFx5jP5MsQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231221)(944501327)(52105095)(10201501046)(93006095)(93001095)(3002001)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(20161123564045)(6072148)(201708071742011); SRVR:CY4PR0701MB3665; BCL:0; PCL:0; RULEID:; SRVR:CY4PR0701MB3665; X-Forefront-PRVS: 06259BA5A2 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(396003)(346002)(366004)(376002)(39380400002)(39860400002)(189003)(199004)(2906002)(107886003)(48376002)(106356001)(50466002)(6116002)(16526019)(26005)(186003)(3846002)(68736007)(2351001)(316002)(2361001)(105586002)(4720700003)(16586007)(50226002)(72206003)(478600001)(69596002)(36756003)(21086003)(6666003)(25786009)(55016002)(7736002)(6916009)(53936002)(486005)(8936002)(81166006)(81156014)(305945005)(8676002)(476003)(956004)(76176011)(386003)(2616005)(486005)(4326008)(52116002)(59450400001)(47776003)(66066001)(446003)(11346002)(5660300001)(86362001)(51416003)(97736004)(7696005)(309714004); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR0701MB3665; H:cavium.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY4PR0701MB3665; 23:kwb/lZ/TdMEXFjVUtHlMsB9lBeUryRwKnEZoex4?= 8fO37XcjeQg7Yw+cJDr2M545pviWQDS7qvmJWssIZlrF6InU9rVxzyqB3huJGAS1EDfwSEHEzgG2gR8eqj/7flsw+F8tCljyYteN2QOWIvV33ttLoBAVRg2S47/k1I2fEpCYFLp6A3tFZH6ekYnH6Jpx7s3csv1D5Euj4cIVfiXiBgugNNQaLjM4Gz8g9fARkacuPTEfHTclyjzfTyOlo0ZFIoEP052FoqfzQo2HHUGyo7SnUjWEoA9UmCEUDZi9564uVlyTA3hvoEDM/XXpBIk9zUgKp+TlTMGrQrmN35j9GAiW0qGiFxzYII+G+YWkA53Z8eU/fqvlARdx7aF2t6HQppnRwSpFmLUcd1mzDcA7linbTjNFZFPP5bMTVMq+js+ogjeoByGE+FhHRXlJUen5kdu8r5bSXmxrCRO7OuE+13WJ4iIfdWsl3ONWovHuy3x04CgqJiEGVVWdW59ptiDBPSTS9SLWm0tJFI4IoN7p3AxjANYYu0HzRcYk/VSvOdulU+9FAgxxjYW2v3FCXoYASZCKK8UWYe6mb1iYyQwYVP3DBlF9dIOSDxI3cLQg0Mq6r0tyqr/LH5JiMCpTs4yYwSX8+q8YbT9wR6jlAh1hDIS+IJZNKkYdeKxrLvemUWFvXdZ+jUBzOBXLuJbS/SYKjvXWyLwmaX9QdKhdD5Vt3pXF1Qz+pT4BLbO8R1k6C5/FwrhHxLROelySJQLCuubyBGHODsT0h41pAib5ZCOEzRdHAzEGURmDkS217sa63+McAU1yMb+6eB9WpHADtnqTh/RrW2PFCoFcJulC1YE9tV513Ny38LN3DS/mtFfqjQdh3nEJMyZNuamjMJLiSYdeKdZvsA7CjyetdwlrClxNjZ8efDzh/+IFbnB2MvdVlC5fReaz4/tGW5sKm9fkzOPAxq7nniFNpi+zOTX0NICH7sls1APp7CsTd3W5i777Ryyu50PPIUHs0SOQ3fa8DJ2QMtnAjyjLSLQ0hAi7GoRQQByFoJd3ye0r2CzsFl7vhPeSzwRvywa0FD0G8zczlzNB1kp+Y62KcDPGPef+DavTyPzwV66olZ4iSXLcZgvAlL/O30InR+TK9zXNgpfYB2GjIs+yzlPV5/ua+nz3BhXCMTx/7Ut8UJVeEJUWx5eqVGK911dIGr74Q5qFSY+6v7PX0VVJKVgNDkyAcOQFOPVaBkIyNfEIU31GyyYXPMo8lGLtC4zJM6pOwOm03OKBwcb7NGCx6ipS4QqJSXeEB5FDvFvm5W0ArpivhCz/BvK0D73rIpTivuFzzwExqI9bQ5Df2IB4AzC88T5q2h5SOgWz1b51XpLEW/909YldilgnNvyE= X-Microsoft-Antispam-Message-Info: u4p8M8Rmq5eLOwyJYDRY99fNFH4gC6mafbV+m1XE01IcyJKD84vpw+9/rEImgeh+Rb8SmuuT1NFUUTvMFtQwtzLLh14kwryBykm1nXt6z0lAb6C3wXH5aGsvje2n1NRlhvkAjDvJDQ7H3gWMhiLBA1FGPLa3mI60+CGr9cg8UDzb2BZFaybv2bnoe96/ChLG X-Microsoft-Exchange-Diagnostics: 1; CY4PR0701MB3665; 6:hHQsGVfrSIlexmvCoNLdeaGhqqdTVHv5AKB6Mp7R0bOq6/oBlBcDg0K2FgUNV2DEAOC0K1C+4eSiTY9V1v55bPfcWUl3wf2NhVKGajDl9rLBsRgNyg3tbH9CeS3EFB9ts79glLll5scAcYW9idtY1l9CVNH8ADVeT2ypWH9WBii2PJ1OGSmPBdMs+4/ngi3kvYpXqAWhIiVxW2HtzEsBiut6Sh0DeBLa9sJlD8dv1FcHqWnp8WqL6rROd9MN8ew5m11K+YTvkPn7NZ/8UZ/sC7R0Ra6BaGgOoyctPtcj6S3+NiSBVzghJcm93n2lC7Hqmr5tMimLi2LS1G6rQUFD6JxqsSCr9RsUv8PkqE9W5YYNB2E/oXJ8lK/TQsu79J3uWMFKCL8B85dUBao8yZPK0MC4ruhqnO8MzEJ9HP4TuJIiw/ijFtbRiNLhYdqXNQ2KXsNDJJLe7Xf8CneTEwCfZg==; 5:24S/q/ENctgPDvUidpgUE6eHoyUOYCKQZU+UQ7M6D9aKpFybfy2Xq0qCq532WKsPO2qqVLOtn/ooomR8BIjCJKPCX+ao32Uo9UoVqb93CAc7GQHnzp2u8njh+aadmDl18piAYR4+sWR9JPc8GGsrNN1U0YkcI8ZtRkaOiSQtS9U=; 24:Ci/K4uQRTz7iZVahh3kqFzi72bZButR7PQ+B5vXi8AO6otl2pFcxeuCZNWj8IV312CJEMNptYKyDMvNi3pbfxXJ6cg55z7mkj9Z5xnFOd2M= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY4PR0701MB3665; 7:dtwVhxQQJAcDdCk2TnLlQDQ1sjW1O/qYBh7tTtAMpIbjf0OB75Ib5gVVQ9M1Gpo6KF8yVKnt4gNEF9LhBDBbfqX4BZ5cW+HbXViCJeVJuO+t068oDU64FCbUCfs/293mXAxG3Vu55irkWPHyjjEuFzYWj4ch8zoebGR5xqLONTQoIeL/uQXDiWx8eAhHD7lcMgDtXvnyDLbseDmMebs9axkkmgHyEXH1DOs4oTXkdUjhC3yqpqaprMrMQsxeqnFV X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Mar 2018 00:16:14.7963 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cefa0bc8-efee-4ae1-a97c-08d594411ead X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR0701MB3665 Subject: [dpdk-dev] [PATCH 3/5] net/qede: add devarg to disable NPAR Tx switching 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" Added a run-time argument npar_tx_switching to enable/disable Tx switching for multi-fucntion devices (NPAR). Rename vf_txswitch option to vf_tx_switching. Sample usage to disable Tx switching for NPAR or VF is something like... -w 05:00.0,npar_tx_switching=0 -w 05:00.1,npar_tx_switching=0 -w 05:00.0,vf_tx_switching=0 -w 05:00.1,vf_tx_switching=0 Signed-off-by: Rasesh Mody --- drivers/net/qede/qede_ethdev.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c index f25fb91..025cd2a 100644 --- a/drivers/net/qede/qede_ethdev.c +++ b/drivers/net/qede/qede_ethdev.c @@ -499,6 +499,9 @@ static void qede_reset_queue_stats(struct qede_dev *qdev, bool xstats) return 0; } +#define QEDE_NPAR_TX_SWITCHING "npar_tx_switching" +#define QEDE_VF_TX_SWITCHING "vf_tx_switching" + /* Activate or deactivate vport via vport-update */ int qede_activate_vport(struct rte_eth_dev *eth_dev, bool flg) { @@ -516,10 +519,12 @@ int qede_activate_vport(struct rte_eth_dev *eth_dev, bool flg) params.vport_active_rx_flg = flg; params.vport_active_tx_flg = flg; if (!qdev->enable_tx_switching) { - if (IS_VF(edev)) { + if ((QEDE_NPAR_TX_SWITCHING != NULL) || + ((QEDE_VF_TX_SWITCHING != NULL) && IS_VF(edev))) { params.update_tx_switching_flg = 1; params.tx_switching_flg = !flg; - DP_INFO(edev, "VF tx-switching is disabled\n"); + DP_INFO(edev, "%s tx-switching is disabled\n", + QEDE_NPAR_TX_SWITCHING ? "NPAR" : "VF"); } } for_each_hwfn(edev, i) { @@ -1373,10 +1378,9 @@ static void qede_dev_stop(struct rte_eth_dev *eth_dev) DP_INFO(edev, "Device is stopped\n"); } -#define QEDE_TX_SWITCHING "vf_txswitch" - const char *valid_args[] = { - QEDE_TX_SWITCHING, + QEDE_NPAR_TX_SWITCHING, + QEDE_VF_TX_SWITCHING, NULL, }; @@ -1395,7 +1399,8 @@ static int qede_args_check(const char *key, const char *val, void *opaque) return errno; } - if (strcmp(QEDE_TX_SWITCHING, key) == 0) + if ((strcmp(QEDE_NPAR_TX_SWITCHING, key) == 0) || + (strcmp(QEDE_VF_TX_SWITCHING, key) == 0)) qdev->enable_tx_switching = !!tmp; return ret;