From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0048.outbound.protection.outlook.com [104.47.32.48]) by dpdk.org (Postfix) with ESMTP id C01C725D9 for ; Fri, 10 Aug 2018 05:45:24 +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:X-MS-Exchange-SenderADCheck; bh=nAUuFuxTOjnzGukjer29sTT1I9j53Kua6mZXjjd9tZo=; b=n25qRipDfJwCNsjMwDuRO+QNtVb4msJ5X8IGNSKM5v8veZdNG9PDY1GERf56SIFNU8CMG2SkGRqO1UyHwy2uUtqGvbNPglgx20z5GY/mWC77XY4jaoW7Oj78xULD0NQ5S61ehJluKP4AXTytuOeac48Uldvat5vum46LPq1+Qns= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.JacobKollanukkaran@cavium.com; Received: from jerin (106.201.112.75) by DM6PR07MB5002.namprd07.prod.outlook.com (2603:10b6:5:25::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1017.15; Fri, 10 Aug 2018 03:45:20 +0000 Date: Fri, 10 Aug 2018 09:15:09 +0530 From: Jerin Jacob To: Beilei Xing Cc: wenzhuo.lu@intel.com, jingjing.wu@intel.com, dev@dpdk.org Message-ID: <20180810034507.GA3295@jerin> References: <1533534335-119817-1-git-send-email-beilei.xing@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1533534335-119817-1-git-send-email-beilei.xing@intel.com> User-Agent: Mutt/1.10.1 (2018-07-13) X-Originating-IP: [106.201.112.75] X-ClientProxiedBy: SG2PR0302CA0013.apcprd03.prod.outlook.com (2603:1096:3:2::23) To DM6PR07MB5002.namprd07.prod.outlook.com (2603:10b6:5:25::23) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 76ff6c62-36e5-4163-a1ef-08d5fe73b338 X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(2017052603328)(7153060)(7193020); SRVR:DM6PR07MB5002; X-Microsoft-Exchange-Diagnostics: 1; DM6PR07MB5002; 3:OhgSQJeI4F9MSjSr0wdXGpiQanzWa1dbETXkM/B1WW/q6CuzsLIoOPARvs+W1V28Y5K/bW2aFaJxvw/hvTlj/QkW8wtyoZmullgPYLhR+WfVxf0X0HPVmhFEECPDIpAs8l/GjauTuvwcDHLsj+QkLu4vsCgO7+mwCpvPnMVwgrW4Z3qXlza0NHMRm7QHUBVwHzAYFa7ByxIoEH0L7O6vZ3xuISiJvKAH1si6RkPkbXdOp0d+6pyBk9aPsTRWtLHU; 25:gJuOaLInSlWsm1GryLdJbUBMg96UVtdooDhsi+twugBkyG0hMzXSlXm89gUolTdkm9WYOqxYXabcfa5A4GOi/rH+efJi4fky96K3Eek8pYUh0/4RRgnNS7VXGcG1dFH4JJWFbaPc4RbxD7eTjUkh2ldtfw4yDk17XCs6vqtvhiB+o3fPVt0p2Me09TqkpUXf6cBveIR8HFSvHHnteZzndV5hX7iHygxhA4SJk/y5kVa8urYuW7Z5FqPNfdZ8iEYNvITz/p269OzMl3zfKJyrs+lDjmn3UzpNUYFlMOj7W5tyzSNMrbkKrbbpBlekD9ciKebQysLF4NDA0ANJy6fNAQ==; 31:I8Y6vr4rt0c7+vgihsm/Z8AnhIZZb3kqLni7EjYItQYZ+UMpp9WzJsbgVjDcgGckd8ygmZXdFW+Z0pYIliz75bgZTrc473OgMHB6jmmshaWxz4ad9gukWhcOv0WeX+0vEiesVmXjt6IBR0uNNwfSDm7haZoLRyBvLVr1Ts9U3Qy8sJfgdAN7sJ4V4OWKva2BYcq5dFwyJcOPgZW4ciir6qZKXsbkrxTBGzjwsSPb+Og= X-MS-TrafficTypeDiagnostic: DM6PR07MB5002: X-Microsoft-Exchange-Diagnostics: 1; DM6PR07MB5002; 20:0Kz6hhYDfWdlTTlcvBKL2WC1zMj4zTot8wna779Mtl49bA51OK1QTN61lkIHkWiy3Oam06NL7tm7uzaolgP/IOp09wpNQiFUd/mbpnafqyEYBdYikAOr4mDqb3a9GSgWQ4Fi5B/Bzd2u8vkrg1erSvdzL6NbU5TEBdHGjN6YdbMLSdKuINGxR1R+5UvquI3/e5ABaKl286/oAurGRrwcM0R8fnR+24ShhgMF9s4NGytn1yH/8QliOUl0SWF1jACbTF5kViyTJLqc9YR6Xaf6d6rGQSAZ5kZ+TyiWTjNZQRVU2dVdwqw/W28s39tJGAtISldLZNC3Wefpc+J0r1wcYISGB6b/sqvs/5n1s+iufb2RwS/SSw+g6S5X2h4Azl3teZxa+mCFtJ4mpe9+qCy2CeSgx0WpTFWizpTmZfFW9nK2EhQtKnHK4OfEZUH1oxrzdjYajhbCjVMEsFJGfJQeBHTNHTngBkLFlVtQy9oFm0BOzswduS6UohxUSF1/+DvWqys7jsPRC9muMU1gGf1L4HIXDbBmS4PZnvqEGNbKqT+WSQ1zzC/ftF7ZWrYZg/kkgKbp6/JDbMvfxQ5w78D4Cwnx4Rfy2E7KzLfB/Ka8Hn8=; 4:4nK1W2ZT8xrNLk7gOSEMT7a84Kf6E2PiK8HtlmVIEiA6Hcj9B56SBwOGlSe4q6q0Qa0L3g81Ic63/WHLfdA6SUV7iOukoQ31h6HUi6EbEOrSs1lGFinKmNHGZLez8BtTng1r+7Xj8POhNojjh0G/Re7eBH0TamnXQk4a9S/X0zT/zoPYj7VSiwopm+YERhtOVaYgHf1tgVDh92coe1dneZV2a/r9oqAKjPjrt4G5IZLQAtRTSgXUA+BW9rzHswRbxenUECO75ZmUZcEhXk09Vynh04GAXFDg5WKJFVsGDvQiaJktDvkpKjRVexcQdBqt X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(228905959029699); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231311)(944501410)(52105095)(10201501046)(3002001)(93006095)(149027)(150027)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:DM6PR07MB5002; BCL:0; PCL:0; RULEID:; SRVR:DM6PR07MB5002; X-Forefront-PRVS: 07607ED19A X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(346002)(396003)(39850400004)(366004)(136003)(189003)(199004)(13464003)(11346002)(9686003)(97736004)(476003)(55016002)(478600001)(4326008)(81156014)(446003)(7736002)(81166006)(305945005)(106356001)(47776003)(5009440100003)(6116002)(42882007)(956004)(52116002)(33716001)(105586002)(3846002)(2906002)(50466002)(53936002)(5660300001)(14444005)(386003)(6666003)(229853002)(16526019)(1076002)(186003)(23726003)(6246003)(55236004)(8936002)(58126008)(16586007)(68736007)(72206003)(33896004)(6916009)(76176011)(486006)(6496006)(33656002)(25786009)(8676002)(44832011)(316002)(66066001)(26005)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:DM6PR07MB5002; H:jerin; 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; DM6PR07MB5002; 23:4tyliqgoFBKIJjbZtaAaawve2eExCVAVOuVmOVMEg?= =?us-ascii?Q?0D+4tF4xKPc3ej/lcvgaQy3IZRj1N2YeT9rYKzQs7cuN15SDNlq9CHS8mCyE?= =?us-ascii?Q?9XS9I2QGF2GMlBYHHDLCUPmgqWqlP5mNvyy38VRwAowf1LQ8Y0VhKDQqQ6Un?= =?us-ascii?Q?55kKJ3/0PsVmcj6XFhXwCT2mCwP1olNoUNW3v6Qs413rNHpgIQWFys8fHyJo?= =?us-ascii?Q?GmtloVQvRgD1QZ6ixDkCG/teIXvhzJs0uyWmWf85AxV+sy5HmKIn0xhcGXfZ?= =?us-ascii?Q?dK0Tq8PkEXxIIQoqJUu9W4HdDFDmV7B7evbQ7R0ELyMPZB7vaLU0nW4OVNQH?= =?us-ascii?Q?jW0PgA+Ca9u/2UgiE3MTr8qKYk6ye6wTVBjLhRngHhKv6HPhuty0KPwezVbl?= =?us-ascii?Q?QL8Tm4f7yDVyIJ/LCDBfEdT4kdq1DJ1OItTHWV/oa1k+AiwWGLODrW7KcBig?= =?us-ascii?Q?xqcsuYCvuBLXA1TtJ+ZPGEt7d2g+dKYXfk/wLDUSeRujTHA+E0+jl2BcFJNw?= =?us-ascii?Q?dwvh3BljFIucAveNbUS0pnC0uX3suIOioBLffNXICAwgPHFFdE1BDOVFvMI5?= =?us-ascii?Q?chQqO4b0x7hqJHQUYd8eWENiXN6GluVGeRpKRwie65lF3oXzfA45CKBUzIK+?= =?us-ascii?Q?RIndT8RUiHhis+mGQhfzNNdoys5rrLsGfLjoQabxDmRQTjHhK1Ap8baeFULv?= =?us-ascii?Q?zWkODHkYFv/3Do1GwHoua5AvwuzGvIpW9RQpl4ULyjlkLEz52zVoTVZLM7s2?= =?us-ascii?Q?fpSJ91hZAI4zkH5wAMSyzc49oizd9rU8ds/HzE5ugOAQpKQL1498Lc82Ydqi?= =?us-ascii?Q?pp8sJrMBe9H+8X3uh+W0pUG7kEECghVPCp3LxX3XmYLlYtT61IYWAXB2plcA?= =?us-ascii?Q?DN7gkCNRH2WjqVVNRo/7ptofbHr+r0KUKRxbTVlYZ7gb5yolBnGAaEw+gOB+?= =?us-ascii?Q?HTPC7Rz7u2gDO0lVGgKyNHIYA3rH1B048HlrmPQaUU8RQUkNJiflQDgOVv96?= =?us-ascii?Q?cO4Z0EoKzAMtcsCCE3O3iKCmLL0EH3nTPaiLWrrSYLYxReeXXzbp/R51sDWJ?= =?us-ascii?Q?Oh+ByC4Iqwqs/80HLmRzGlDgsU2jfK0yv8c8hKfroBNGQn4g06XP4nIIhRBj?= =?us-ascii?Q?XcJIWDOc8e8dcsyG7KldPx/SKMrpyN5pCADwiq6fmi0CYcnpQAUDgdIKMrMD?= =?us-ascii?Q?cVn2NYzaeNuGVe+v1CT+A4Qmj997ihpjysvcDw8FVNxfQdMvFt4LDM7OZpGH?= =?us-ascii?Q?v5FboaEp9kDSP2EAQPBa1W0aOOB0KZoFVOFLpydzJLmD7b/dBKwa0DZuG8ke?= =?us-ascii?Q?rg7VM3GV9ej5E/PpmzBPmCIjCeVFBvoDIoqaCTS6AgK91zxXyCzca3gLqe2v?= =?us-ascii?Q?ll1P5YuHgdSketF6CCc+hbDtd8EP4B2xFaHuHO8+Gj85UKm?= X-Microsoft-Antispam-Message-Info: yLzH7rMtXl9a8CxTsREjSnwEp3WUmhDlTQM9aUy8Pig5O4ExwVSpYZdx+8bZQ0oL94Hkvjzi09DsA2AQrUtS2n6EYjSspmVGoO5ZaCnhb9WQEIprp21TdqP65duIy62JU0MPNqmRoVdfGvPJlCVNZxCvZ0zND6U9zZYAZEMcKq0A/0ytNVY+l3JwtbRlXdfB9ijOWmcqaSHja+L/aDTr3VuO1VO+EsduOWYLVXLbJuW5lt4MP2fX7vsfNGNiFZm5W1zJy3NjrrR4vVcdrOvevLnxdD2FTbgS24/hTrW6/K2vs+XEp+uX7LMcBOm5+ycj+JorZWaNaPgPbhCudrye0NHM241M8538KDSN/A5xw7k= X-Microsoft-Exchange-Diagnostics: 1; DM6PR07MB5002; 6:gmxWLUslJfFLWEsGz6EguMiv70vNK3Yh+QIwm7R05NLinzG5nh85o+th/6HOWqhdV0HQi2LyJDjqchrYaXQXt3mi7BTECRrdHAUx/QIE8dvqKp9lGuWmUHD704mLGSvZU63sdUGHgbM9HoXQ2JzXRNpnM7h7rfMbtdscuE/a+WAbTiMHbq2yurrhbCub8mE1+933hkEnOoLQX2o2Xj2/iFJ8gOsq5zin5w6h7CwrUGa7ZF6KS3Jw6Lb6wxwk4JfPN9zxPdCtwDimhGmD/gGEqPBXbDdcVZqeByJdPOWvTOPFIXaseNopuiLAY1Zx1mEPzmO4h5FHmb/hnynGBCAKiywl3IneiGq1SCs4Ax4Byb0i1Ju6SbDOkyS3/Q/nN/q/jbBSzb4OzmbhoqLo6mDxFNq0Pc7dbnCWAAx/MMra/H7fl246ViJ69w+EikKrS0H1+nuIawyFNxp8jkbP8xuh1A==; 5:gH2HUq3Th8dyXVMFn9II6vcay4BGUOZQcBwVWUfvuBrMN+/v9iMJqu3m2xscpB89sSDLLT3KFjct+ZnSdtEKL6NTwVdWVNf8pcvrIKDy2n2irbznL/xCcBge3/xvbKa8xPWUK2zdC+1/C9gCRGG/Vjqd0LgZLOairhf+36K10n4=; 7:ENKCzOkQO1EbPaR5ZxTYieRZDipx0LpT5lNhLPBqx7kz6KxMTE3VX8n6wSiJ4gPHi+j23W2w0wjFFt0aX4tULvbu4LzPz340iabwW6Tv3oYFObCX4qIlRo1aSHGjp50GNMSyR4uU7k4bHzbfuBgJqjC6jPcqbv/E2jr44VZhpbM7NQAiTnm6EYFolWFRm/a67Ljec4nYO9+xMaj22lVHr5nz0oYtL7q301vBaUKavd9YrrIasjFur+mM2xGowPoM SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Aug 2018 03:45:20.7278 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 76ff6c62-36e5-4163-a1ef-08d5fe73b338 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR07MB5002 Subject: Re: [dpdk-dev] [PATCH] app/testpmd: support bitmask for RSS and FDIR 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: , X-List-Received-Date: Fri, 10 Aug 2018 03:45:25 -0000 -----Original Message----- > Date: Mon, 6 Aug 2018 13:45:35 +0800 > From: Beilei Xing > To: wenzhuo.lu@intel.com, jingjing.wu@intel.com > CC: dev@dpdk.org > Subject: [dpdk-dev] [PATCH] app/testpmd: support bitmask for RSS and FDIR > X-Mailer: git-send-email 2.5.5 > > > This patch adds bitmask support for RSS, FDIR > and FDIR flexible payload. > > Signed-off-by: Beilei Xing > --- > app/test-pmd/cmdline.c | 199 +++++++++++++++++++++++++--- > doc/guides/testpmd_app_ug/testpmd_funcs.rst | 8 +- > 2 files changed, 187 insertions(+), 20 deletions(-) > > +#ifdef RTE_LIBRTE_I40E_PMD How about moving all driver specific tests to driver/net//? I think, it wont scale if everyone starts adding their own driver specific tests to testpmd. How about creating #A generic string parser in testpmd? something like, port config (port_id) .... # and do driver_name to port_id lookup # and introduce "test" or "self_test" ops in ethdev # and call "test" op on the selected port_id > + if (!strcmp(res->inset_type, "hash_inset")) > + inset_type = INSET_HASH; > + else if (!strcmp(res->inset_type, "fdir_inset")) > + inset_type = INSET_FDIR; > + else if (!strcmp(res->inset_type, "fdir_flx_inset")) > + inset_type = INSET_FDIR_FLX; > + ret = rte_pmd_i40e_inset_get(res->port_id, res->pctype_id, > + &inset, inset_type); > + if (ret) { > + printf("Failed to get input set.\n"); > + return; > + } > + > + if (!strcmp(res->opt, "get")) { > + ret = rte_pmd_i40e_inset_field_get(inset.inset, > + res->field_idx); > + if (ret) { > + printf("Field index %d is enabled.\n", res->field_idx); > + for (i = 0; i < 2; i++) { > + if (inset.mask[i].field_idx == res->field_idx) { > + printf("Mask is: 0x%x\n", > + inset.mask[i].mask); > + break; > + } > + } > + } else { > + printf("Field index %d is disabled.\n", res->field_idx); > + } > + return; > + } else if (!strcmp(res->opt, "clear")) { > + ret = rte_pmd_i40e_inset_field_clear(&inset.inset, > + res->field_idx); > + if (ret) { > + printf("Failed to clear input set field.\n"); > + return; > + } > + for (i = 0; i < 2; i++) { > + if (inset.mask[i].field_idx == res->field_idx) { > + inset.mask[i].mask = 0; > + break; > + } > + } > + } > + > + ret = rte_pmd_i40e_inset_set(res->port_id, res->pctype_id, > + &inset, inset_type); > + if (ret) { > + printf("Failed to configure input set.\n"); > + return; > + } > +#endif > + > + if (ret == -ENOTSUP) > + printf("Function not supported\n"); > +}