From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <hemant.agrawal@nxp.com>
Received: from NAM01-BY2-obe.outbound.protection.outlook.com
 (mail-by2nam01on0060.outbound.protection.outlook.com [104.47.34.60])
 by dpdk.org (Postfix) with ESMTP id A64E029CB
 for <dev@dpdk.org>; Thu, 13 Jul 2017 14:02:48 +0200 (CEST)
Received: from BN6PR03CA0030.namprd03.prod.outlook.com (10.175.124.16) by
 BY2PR0301MB0597.namprd03.prod.outlook.com (10.160.124.28) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id
 15.1.1261.13; Thu, 13 Jul 2017 12:02:46 +0000
Received: from BY2FFO11FD018.protection.gbl (2a01:111:f400:7c0c::149) by
 BN6PR03CA0030.outlook.office365.com (2603:10b6:404:10c::16) with Microsoft
 SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1261.13 via
 Frontend Transport; Thu, 13 Jul 2017 12:02:46 +0000
Authentication-Results: spf=fail (sender IP is 192.88.158.2)
 smtp.mailfrom=nxp.com; caviumnetworks.com; dkim=none (message not signed)
 header.d=none; caviumnetworks.com; dmarc=fail action=none header.from=nxp.com; 
Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not
 designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com;
 client-ip=192.88.158.2; helo=az84smr01.freescale.net;
Received: from az84smr01.freescale.net (192.88.158.2) by
 BY2FFO11FD018.mail.protection.outlook.com (10.1.14.106) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1240.9
 via Frontend Transport; Thu, 13 Jul 2017 12:02:45 +0000
Received: from [127.0.0.1] (B10814-12.ap.freescale.net [10.232.133.65])
 by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id v6DC2dC3020718;
 Thu, 13 Jul 2017 05:02:43 -0700
To: Jerin Jacob <jerin.jacob@caviumnetworks.com>, <dev@dpdk.org>
References: <20170706062120.3895-1-jerin.jacob@caviumnetworks.com>
 <20170710165946.31080-1-jerin.jacob@caviumnetworks.com>
CC: <thomas@monjalon.net>, <john.mcnamara@intel.com>
From: Hemant Agrawal <hemant.agrawal@nxp.com>
Message-ID: <ff0cb451-8a6b-efb2-bd60-07fb9c2224ca@nxp.com>
Date: Thu, 13 Jul 2017 17:32:39 +0530
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101
 Thunderbird/45.8.0
MIME-Version: 1.0
In-Reply-To: <20170710165946.31080-1-jerin.jacob@caviumnetworks.com>
Content-Type: text/plain; charset="windows-1252"; format=flowed
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-Matching-Connectors: 131444209658541398;
 (91ab9b29-cfa4-454e-5278-08d120cd25b8); ()
X-Forefront-Antispam-Report: CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI;
 SFV:NSPM;
 SFS:(10009020)(6009001)(336005)(39860400002)(39840400002)(39410400002)(39400400002)(39850400002)(39380400002)(39450400003)(2980300002)(1109001)(1110001)(339900001)(189002)(24454002)(377454003)(199003)(9170700003)(120886001)(33646002)(6246003)(2906002)(7246003)(7126002)(38730400002)(2950100002)(6306002)(8676002)(305945005)(53376002)(23746002)(5660300001)(4326008)(626005)(54906002)(50466002)(105606002)(104016004)(4001350100001)(229853002)(64126003)(85426001)(31686004)(83506001)(65826007)(65806001)(65956001)(86362001)(106466001)(356003)(54356999)(68736007)(77096006)(189998001)(50986999)(47776003)(53936002)(76176999)(230700001)(81166006)(6666003)(8936002)(966005)(36756003)(498600001)(31696002)(53546010);
 DIR:OUT; SFP:1101; SCL:1; SRVR:BY2PR0301MB0597; H:az84smr01.freescale.net;
 FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; 
X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD018;
 1:pDSQmlknv5FpbCFe4Q9lU1H4nCZbfmdnGf66rvlA9BUS/g1eCHbZgH117CQmcKaMEd/FT5tpyxqdhL9yyS7mEf8vLy9gaea3UF8AJgAu8mEIyNpqo9YXeE7dua/4XQzrOIcDjMfEY3iZbbKO9uTKeVD6uEkNQFbc7VwC5dktPcaL400O/i0ptMP/G5L0LU46Ve9NRTEW9rPF+zUcmxDU5ssTTrbTbBEObaZOHqxfg9EGj5xBAVz+2oZTQa9L8AJjU+YcDBKnQJCm3GbK6zIKVhyPGhxdjzD+pbRP/YwWCMVqe5fZ7OABoR/Qk8StFpNFkMdko9mgjusghGp4me8ZA0x+DFQo+ci/P0yY+FXRHjBiAFJ6cRsyh1KJI+OTfWvZU7Uipy/ZlukUEMW3KllUOWsvQEAayURaxMkRUi7JI05p9sVf0LnHlkf0NIl8n854sBHrY2fMl3sXngq1QYH0VgI4PDlGQuZnR7TFZNJRZUFIBMC+ES/2RsVWrZ7A+YBonUPuMp5CLsGwARTOmUPtu23BfW6zb5D5H480Td2Qzh6NErJ4MEIkHsufAuD06b57EgdQs7GN0w1JpgLjn+ZfsbbVcp6jATqs6m49DboAnYuzvQ6gcsT2capzyyS015zUYxDFy4ZvDuXdhTAorh10EqVYcvKx0rpzlYOCoQFN6Y+RvktkZ8Uf33EbyNHriU/9xaRmL32/QX6c8PJdnxg2ThoKBiTbR/30MMQOn5sxSs4GjaKyHlFR/vOEqWsMVdinFpQBBVjDXJc/rq64bo3/fs9Ok0LVkzNJylrtE+U3G3cmOvMeBRh4WaxZi6Eleq9uIUbGS8Bf3EuH8DFIo63T/3Ujf32v498r8f1FYQxNArzd2EkALfkU7moqEJt6DfJfI0QzsD4b7rHk8SduVVDSAt3sfGR5kd8rltuaIeHobcE=
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7d01ddc0-356d-4cd5-aa4e-08d4c9e712de
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(2017052603031)(201703131430075)(201703131517081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);
 SRVR:BY2PR0301MB0597; 
X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0597;
 3:sH3ClFtFGxwFTezzABbQnGVYSy6DQHW9V+XfYm+IPVhzxhG88DW+ZWdsK1W9DwWRzvcEY7tAj7g55KlJUN/kvdzqLNMccuwIWW1/ARSk79QWz8YlDvmuHwyDszGMCBW1yv7e97n5FdlsUceGOMwxJg8un5Gedy8eqkE2oDPzolJ3sG2LzZY08UdV2lit5+zAQMHwgsli/7IaZZ+Ws2N4v/65F0LAaa1wkbWbzQnfpRduIhfo2XLmDLdvxqwRpZfd3AzXM3tgVDygLvB0oVf5wkzVbPxff8DT7yEvGrpIKBTfPaBNnVMXkQz9OfrdSWfNg12YCPc0SNRn6WXIXw+rreOXaDy6yvIgNQ6gGwN2Qz3Ly4VRPFYTF9nGC6m9OTcDtfHbI/pugLB07j00D4atDqM4Xq0DLzHj0+6wVnZyagP1kxD1GKdxe4XwmZWNrWwJMyHePWkzeVoUYBLaNvMRTbYE2KfjlBShhtWbbIwYctG2nPdTt1Tk7zCt4ifYZTF8M/qjCYzqPQOtcazGeIibdfSczYwtAel8QKVdSUbZIGbzUy4vbh44S85i6BJ3JeI0TKJaJ8Met4WkjwkW+o38GxBmJFhqXmrEW+L8zOerxI5gCcrNRQanDpmfmMuA4aY+6uxQU5DGVYaJ5UBpn9mP9f5Bodbmy4fab/z829H2OwxDeFv3AO64mYYpHTED8EZ/D3j7gnehSEcPGwjHMvzLbC2ki0+skT4NIBZlbzbFRwaL0E7ZqKyO1oACG+dcp9Xh0tWNS2zEgCSg7ugd/8YDzbfX2diCakjLaL8PHaVJkhYDHxi3bI3HTrd8QxmraV/70O4uWOGCqz27/in/uWVkq51TTyln38JaHgZwo6FRtBY=
X-MS-TrafficTypeDiagnostic: BY2PR0301MB0597:
X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0597;
 25:on3qEeRITV1/3CWMo6xUD2O2k43yxEYj8I5ALjGVLNH4HEyfCRVw8TdB4qKLthQAZNJ3Q/ASXpHYo3ckqflPpH3BlCqj7UW6/aQuQThdSJPAZ2BOmKRmeHMQVtLaf7lNwcD0vZOOQQsv+NluqiHMvGIf5voeWE71tyEWPfKrjFHuT3UAtLNCVb0joS/W55SpyqzrpNMkW6OYxMPJ1We3tZcON05YrR6bm2D3P5w6hn7CFgSNrGL/IODZtE8aAh9mZB+2Eb+xLDQAStIHoPoIcLA2LqSmmA6j/6+o8smINJT8UDwMmfyS0SN+fiGOolOVYqelOnFsa51yr4R+IC3P8erqFlAiKi8/NtzrgdSGMSMoEKzaHZ5333GkhCQw4lWpH1r2JJIXgWfFk+uBTt3JTSr0xpMyB17Am6ZjR0e9X5LYxGzRO2MNCZ4af/r1so9Nkl8MC0U5xKyvO5Y4sZSjFTaqF5lDaCODQfoFlzUlEg2tm5lnF+haGGcgEJ6c0CGQbz1tXRecHyUORmkm89dytcDVf5t4GEAXC6hqH6anaLwdGQjaHOe5e3Jn11OMQix9MugVCuqRF/gpeA1F5CaAF0qpg3ycjUIXQAXKCqh+cIyJVrXdOC0muOguPSLDE1A3L3jNJ7p4gOcWWIpaNY7lsPK7RASzypjsXzAJdsHPGvBXiHvLFfu1cjkUxq4cx1Nk+FCTF+RwCAVsAm3HNpJETY4QvWpMJowlSQEqSOH9SYEFjtz+xzHBfjv5U2O/zBGcajERBhDafU5B8dGOy7xVoc/EKU89oRXwUC8FtnfM5kQxtzQUSNebWH1vOr8B6wPAoP58CDlF1LYfrNCIqyxyAVEl4NyMRQig952VsXyjiIz+lTUyrNwvYgIZHMOv5GM9BsvogwRzc/sYNUo7/vcwR7CM5kOjyRy4R1QgxnfaBCI=
X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0597;
 31:1ZfXlWsl95tsZWDfPZs4I6DugsmVmYeVEFD1x1obqyKW/eIgD7j3YOxQe4nGbv6uwE1ebnsk6m/qe5TUZeQuCGj/L+m9eF3RE+6YbHDf0caa4hWhj/ON5k5dGgNUaRL31AFzknt+i4R5rE2UMcqny0NZMH4wWHJn+KRUFp1VJ6obHmOUgaf0fYVfWnhgGMxuE9gBpQFKzRZB4QkvXp1XXRhiIgberBvIfBpmlQe84Wiez7lu9+J+h9UsF/VpfivC+BSM0BQ7+oy0VVK9rCQ7QGn5HD5pA9CFyAtd6mLPB2V746qFbkaMY3ItNI/KSdXWMmgpTvfTmdMEXJVOBOmoTabQdXuF8WJeuK2Isfm/37yVjFAf4AxLk8LUdT5PdbgOibLnsB8z1vzK4VLj3xEVujVVUbjEQrDFoKoBQrv7ExdP3Fr2RpUTD0F1QhscpXm4e2H52gP3jaRAs2QuLqy9plSfugUPlYBIGzETATQJMnkto99tHazMix2KlabqZmhe43YQb2k9HDRQsMYaVC0d7yzcAMykcE4ySTf0m6Z7APuJtos0tMMtItXOZmXunI+ZcEW/Jwby2TuudLlmH66NRaTvifihHUOixPXyE+RdVMGoboHU9BYZkxA0StBHS5pCQkeUUxX4P6Wtu5SiXMyuqARD14zD9b1dyqKzK5JT8fL4f/TC1gPHFPYmT111pkLaEca4MHeyTKIDNYs+1/r2IQ==
X-Exchange-Antispam-Report-Test: UriScan:(133145235818549)(278428928389397)(166708455590820)(236129657087228)(185117386973197);
X-Microsoft-Antispam-PRVS: <BY2PR0301MB0597EF11A6C91899E4AB667089AC0@BY2PR0301MB0597.namprd03.prod.outlook.com>
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(601004)(2401047)(8121501046)(5005006)(13016025)(2017060910075)(13018025)(93006095)(93001095)(10201501046)(100000703101)(100105400095)(3002001)(6055026)(6096035)(201703131430075)(201703131433075)(201703131448075)(201703161259150)(201703151042153)(20161123556025)(20161123561025)(20161123565025)(20161123563025)(20161123559100)(100000704101)(100105200095)(100000705101)(100105500095);
 SRVR:BY2PR0301MB0597; BCL:0; PCL:0;
 RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095);
 SRVR:BY2PR0301MB0597; 
X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1; BY2PR0301MB0597;
 4:zCdHMYOCZpnfqDXIWmUABAAh6S4obL+OFZZr?=
 =?Windows-1252?Q?TZ4wxLrim/8/Ss2vHcqPdYKLuKWFh5kEZUT+o2VyoNgaXz2M3qVr8MDp?=
 =?Windows-1252?Q?+DJHvESAVJ93NSqKkD1dgwMZ4ZgTUev9+J7ARAL/6NyEes/tA5Mavqtc?=
 =?Windows-1252?Q?oWuZmpDOuTRHK3OiU3UN4/kbg4sj+3Djb4+zUC3sagIn2ZYLIduMTr7P?=
 =?Windows-1252?Q?OVxDb74SwMLKzOY0CLu3LiPAqlZr2AYUJ7GlMW50UzFJ4oC66akP8fAq?=
 =?Windows-1252?Q?ga3gDaLQvOpWlk2oYxRFK2Ot1FdHhQm6T4Z0kPpNfhHBuxWX8SMXWQB3?=
 =?Windows-1252?Q?vvHJi1MromJM/CZjTapt2DqycRENCoZLf/cChMn8SiyeU2OoLn5ZvJCJ?=
 =?Windows-1252?Q?cIha/Ak7FP9nQOf2xBogZx0JeuvBYL3g1972dCoeiccW9LyctNTQPuf9?=
 =?Windows-1252?Q?E9DYceGp6oOhjjePvgQp6X2an51d+9qD/iJtlg3eXB5ZhdHs51Ie4TJ+?=
 =?Windows-1252?Q?qaeV15WoMBT3pyvCPgCtdQMLx+cinh1ILcTe6X/fjFKs9QPvHvVcclId?=
 =?Windows-1252?Q?4dBPgJu7otxikHsPjdYlQJtX7NjBGLqiAqs1gAKoo1bEpFKT5lhXSTRO?=
 =?Windows-1252?Q?+w8N7MGMc4WVhizgLx0Bbv4J5VZgl39AVcUeIsjB/MUWiYmTOmnP3m/k?=
 =?Windows-1252?Q?oBEVs7bWp4pWarv6G1TnI3OoWr/bKxO9PsWkN0ycuHBfZ+NfV+4ZlJnL?=
 =?Windows-1252?Q?/P042FCtcriu5ztIvZERSLLR3VWdh1azQgKW0Ox3K7FZcssFDOJ/cKOG?=
 =?Windows-1252?Q?B73ymYsAYTp8tjWLpbM+JjlmVU6HyNQCsGEG2Frs3rCgoEHqQyoHdcqN?=
 =?Windows-1252?Q?9upbVGwZYIDQqDvI5NjdtokPLx2Lysm03ZxVla6ZRJSLDPtVkIuoZZNc?=
 =?Windows-1252?Q?FL7YrnjEw1/OGc+82dW0eRSh70vP0H++rTS5+Y44jQGgKIpXu/HkO6xQ?=
 =?Windows-1252?Q?KxSF7LEjqd2f8xtMfalvIAzsh6/9V0u15A3Pw98OShVA/CyFk9h1gTfi?=
 =?Windows-1252?Q?T3243oI2/XsHuWMHJrR81m7zLN60f/ekfDzfqwG44BRVjqJ2mr7NJsci?=
 =?Windows-1252?Q?Soru6+BsDe7r7Lb/tUdS1/8CjQAAEh6mA9Fq1QZ6kSNNVk7ffZcsRw8W?=
 =?Windows-1252?Q?yr7cr6lMU7IhE2v4rC19RXIpPVjbb4EgoKeO3Z1fZ4LRhDMRhhtRMjPY?=
 =?Windows-1252?Q?0cB62Km3yMEDBzAogHOc/VQnuafXv9wQlr5UrS5L9k7wTstyqRkcBuqL?=
 =?Windows-1252?Q?lkSvGdm65RGruclaErujBnD5b7DjifYv9OAzjhGkFUGYJ5tCRnXInpqK?=
 =?Windows-1252?Q?EOatejDzLSEOLRS+9zKGmo7IJTzjaDEY0aqgXnUkvYdfrXj0E+yPPe4j?=
 =?Windows-1252?Q?WcpW2d93cdGapE3kBI9klt/OOgr5h/OlVjyXcDhdKxCjev+K2XXva5oH?=
 =?Windows-1252?Q?umhG67qKTB0S4ps1I8SGs2HCQyamIMTw11eRhTopG80+EtNhTU7HRHQk?=
 =?Windows-1252?Q?Qj+QY38htybulK0=3D?=
X-Forefront-PRVS: 0367A50BB1
X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1; BY2PR0301MB0597;
 23:bQg6v0bL+9peYQU1YhjybnglimCffMiIkuu?=
 =?Windows-1252?Q?CEQtMlrXgoYOn5io/LY5O8Q6aTWSvGlJyzi4BM2VtvxPnFYGTr74lmRb?=
 =?Windows-1252?Q?s2AgbSkUBMPqOscmLSeV/E4A9TyZv/O77x1c+t+OEOpSy2p++wNExEte?=
 =?Windows-1252?Q?bK2+qMPCe7XkljgljemzvZHsi2fKx5Upfo51Xby8Ve6Qceq4uRneETLX?=
 =?Windows-1252?Q?6GTe9JBlqVcpyJVjsr27hjtoPJ4+SQGdZDDvL4azlO379+rI+ORZTrZz?=
 =?Windows-1252?Q?wHLPbu7hIAtdNmr4WHfPrUQs55OkttWNu62PJF3G8LGrXnHlRt03gONj?=
 =?Windows-1252?Q?z+iha3mhY+1jBm5Eyc2Q7CZNHRWJ/t4DjViTpkTNQNO1lKHHLBgS2Er2?=
 =?Windows-1252?Q?3ZIZtLuYD1G9YcIWi4ij9hfflrqY0ssPcdxJ1039WxhF3k8WD0+11yow?=
 =?Windows-1252?Q?V9zdpPY4PHYYobY7dSm7DNVtcMJIgSfB/KH2Vw7grD8qACBsDTu1KRTW?=
 =?Windows-1252?Q?p2Rq2o3ZH66zJ87t6/tc36P9JND355DID51CHWh1Vr0cjoqKLWykJsJt?=
 =?Windows-1252?Q?S6pTzosjRxmW6mNPxrhDhdLggNB7OcvzakhqRiSW8ZoHXXieAzTOLNor?=
 =?Windows-1252?Q?tpYMbjB/8VC/W+T4cHNw2oJvULeLZ6AoeklPauMhHYR2FwVqE9n/BNQ5?=
 =?Windows-1252?Q?1/nIYHE1Us7EawMF/QEmsig+f5Ojuwv6h6bFQc3FeDz4YB4YJK7VLMlA?=
 =?Windows-1252?Q?Eq5cqpXNfWl/oQWO5eRnP0B42dv31a92TlVxp3Bhu7a2uJhwI2M2KaU9?=
 =?Windows-1252?Q?Nbou2L6EIVzQS8i5TwQ/PZDqR+IUNIoY/D1iHrZ+xDVtbidF1FQx1wBS?=
 =?Windows-1252?Q?MkiVREqrqxcx3vegvje7jr2tditLwTRrhN3uzJJ4Up/65UYuwZ23al4s?=
 =?Windows-1252?Q?4QredJt4E6OdjhvOriLYBrL0BMw8MacoqUlpHhsoAfttdWZRgOkC3KV1?=
 =?Windows-1252?Q?LhlWaNJqRohMJPTcSFu/1c8XPhl2gDAb0rOIaniEgThiImxVowZ6aKjo?=
 =?Windows-1252?Q?/b8oSmswPk3VJWT6SXbILD3uVLq3hWKFrE+VYMCoOT5hML/aD1FDCCke?=
 =?Windows-1252?Q?h1RFqYrvPZGKtWdvk5K80uz+K61bnI+Hi2zHPNrVdLl/7CxazTl7V5Df?=
 =?Windows-1252?Q?0EpfV0b2PkxGfHjxSfVQEllT5RE2sVih1kOKCKDwFDTkCZvqbqItoVFU?=
 =?Windows-1252?Q?CC2wHWC6um6rfsbpa2vk42qgsFVeOlTT2gndCAkgHzqqOif4HAwRnUTa?=
 =?Windows-1252?Q?mZ36d+Oeg1nNhE5Nr//fcA4JCm2he65PcTTrf/7C2DZsNzmO9oUmL3vj?=
 =?Windows-1252?Q?Xg16XRWvJj6yLoF+iUquDDrL6hYGIgxp1hwOmQKUnW9pBmDrfPN3GRL5?=
 =?Windows-1252?Q?h+Qa8JYcn4TX1NIgWMKt2kdpU02fdjZiws233LDQ+xsOWXJeR7WS+ITF?=
 =?Windows-1252?Q?kBU6RYtDDoL40R+rwN41TNA+qzvh0ykOd0XoqohvK5wVvU8VrHFuHYWT?=
 =?Windows-1252?Q?a5Z8WtrnY17k1dcbn6b6l4itliX0DL+eqeF+JPaFuxuAUetTo2LPCFuq?=
 =?Windows-1252?Q?Gjrd8UBykwgvDpPFepyr3bCjZ3H5vNLExdT7kmir9zNYwYNor2FekTcT?=
 =?Windows-1252?Q?1pFHKE43C9Cm7pR93gFaaJsozvyKJcxkBAVN+kzej66/hkboSMAQD?=
X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1; BY2PR0301MB0597;
 6:LdeuvFtl/yqd3c9y3DD7VJo5BcwvN4w4fs2m?=
 =?Windows-1252?Q?8DPnWJRa6vM7DmhFfjHYuIdz4wkeNaSlaSpUVTvLJehobABZPo0yT3Sc?=
 =?Windows-1252?Q?wiUB7Le4fBp1RiXfH2ssXjYrg1W4/0RUq3KimTDMTcs2ViUwvoK7hEL/?=
 =?Windows-1252?Q?H9k5dyT4EKoaRqyqQDT1hOdgiIVN46A8h92JUoEpDLan4rzCG/V95dqS?=
 =?Windows-1252?Q?kHuqbvU2SNlSE9Hi3+vQ9NO0E+KgnOQYBi+W/yX4MyJEfwuzx008SStD?=
 =?Windows-1252?Q?WyDaTH3CnPTZWcV0YnDZIx6eyQNJPh2bNq1YvrH51B98IAdUTOZ3LRJI?=
 =?Windows-1252?Q?4xNnHwGcXcQeKzA+hgXIegK2B9wuSJQYl28GjyDLjBrfeNY/Beo3Y9JJ?=
 =?Windows-1252?Q?1mmrcibBuLg0uReFs0FckkniQNIpDhzxzq5Sq3Ck8tA4BJ1iWlaoCrYh?=
 =?Windows-1252?Q?Upk35uNcR5Y5MLv+Dw8T/D3TPqdp3wpXCYHjVsWa/1AOx5d1/8guyXJ9?=
 =?Windows-1252?Q?55NHfRq7dy/mkx75S5TyohGzCBXo0uR75tBwMlWrGBGEsuZ7hw7diza0?=
 =?Windows-1252?Q?TgTdjgcCXQYeEZowT2NviE1ZayAVKHbSym2Bo2qiLWqf4EC3OROp4E5t?=
 =?Windows-1252?Q?lFV/0Up74lVPERAJRN0Bqjn9RX3Dy1SvLEVA1pqfvPfBvEiSeqIIk4iT?=
 =?Windows-1252?Q?9zeMZn8/r9NMyDZ4E/iQFT4V7jXq+nMfrBw9KPbcxP0Ym8bqSSWoKvs3?=
 =?Windows-1252?Q?XjSrIu+81zR9IRxybDSYqnP1suNDRPC5XY12D5gBHbXDeDQjTwWdieIx?=
 =?Windows-1252?Q?OISdS9ssEaiXqHyzE/XCkJtbtAn4tks8OgCSh4G/i9ntk8GftGi6LqYg?=
 =?Windows-1252?Q?pWw0VpUvBuMDHNRYZlIpaOjSm0vawnu9NE4fj5J/Wb6GEIVWTcPc4Em3?=
 =?Windows-1252?Q?5DXqChnzwPaWEVl0oPxfby/EC1loM/rKyeLNUxaF0EzdNljHwIRNwMvJ?=
 =?Windows-1252?Q?d1bRbzBZ7CSq2WwCoEmZ16waH3/kMB6leO4yQdh20/9n0sGJWw=3D=3D?=
X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0597;
 5:J594mHzYumDTCTbc/QgeEax9ZgYtS78rHZoV5JMpYZPeLWeIYA5RitY0tgGkBczQjve2TkQ+3PyCFun4v6wecZS93AvOTVtJDKKUkAtNRDbdfLiM4ryb+IWOiogziCW6FKXskedpugwrdMzqz4mS93+Mq0dsqGyjDS+CLy1RJPFNHUD7aePKRI3665I+hrZCYXsf72NMjN/ii19C0HoQhHjOoacUD4Gr5n4HU2BdynlsUWiFPsNH2sOs/5blDGIEfYfR6ookfgcaC+PJelGD0/3klsrwjtSYmTvzXLAgDfOkRyCxweRL83HBcrtZtMme7ofqvv/SCPvGVYWvQ7CvoEn8ZL933suTNijI/zWJaMIp5hZquEeScgjYrArgx4j/R+al9ES7NUojF1OXCjFnQzvW9E1iqDSzt3gZljbiRC+omrK1vS3uLymrkzbrnuxpirLHeW/wrL8MV4chYj/jmW+Nw92N4kSfQ5/xakb+BFp0qs2qX0ksDTMeYwK0E3i9BojEGltxMxaTlGyHvF3Mug==;
 24:Y64iT/xhQCVbdEzsLyTE4RA+TzIDY6dvTmvDa1aE4/AZdGU/W+33wbXzCbcGhlon3b6l08X5EAPEueyG+fw+2+/2VlMxJbT2vEf1fEoaqC0=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0597;
 7:eoDva7Ec6mzGa/3m+rUcK7UEMhDRiRhr5owphVexHK670JRxu29Z8/Cvtzw/Dk5UZNmFcHZ3j5iSypqgenCHbdR8wbpGD9N8XL4KxJoqsfvT+53YTveE4zU+W5kyyuOvHOSK0ST9WTdh45kGK3LRHe6/qaItK8aSmouFZxKcEJWstLmcanoLIzRth6ilFFhzyMxS8Vn0Ytj9XooQLq8NQlPuHKFrERme6VwC59ES/XecMMGudg7W0fiQ8Z2kTCRJvMRL30uk+x80IyboUHeVS3yN1xACMsc+hQ795IsVFZmy2y3eJwqRXuxLwFha1ytVsYex6Nsv/jeCKm56Ha2qoKa22sd7qfg1oJdKtOMiFCcyczbUdTl41SJYDp6xbbirb699qJ3Xqtvt5daxd7ALCg1f3j9/7T1EHq6vd6kYLENZQZthVUb2ZEeTCWn+vWrnzo+nP7LislqBY4rcHBJjfM+ddRNPbziHuolmIs6kZnpSGS3KpaPyVJOoM/A/iq6M/il1XNRumISxSyUH7wy8lkIeaEytTHHqVru5mKJfHp/CLJOIbvUK+e2mf8kUQjBY7dVS0tICUenTZTYeoyRzj3PHcIuOfAi/ICV7zAVSTCaEJDiMidUkb8IJDzOqYeRtizn0fyoM7d9Jk3Po+JbU/FZnycvp0i40xEB6aTCY3Bdg+d+Vn5dzfUwNFKA33Xew3WmH2In3oNK+SFDN6jRkSO9FxC5gIRq3fmRh3CQFV0VnRra9wcH1fC0BUaLMOEkB7zir4B/EmAagawKTZqDqHgxNwSLm1OrXbGGyj4TkbwU=
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jul 2017 12:02:45.6201 (UTC)
X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.158.2];
 Helo=[az84smr01.freescale.net]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR0301MB0597
Subject: Re: [dpdk-dev] [PATCH v3 ] ethdev: introduce lock-free txq
	capability flag
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Thu, 13 Jul 2017 12:02:49 -0000

On 7/10/2017 10:29 PM, Jerin Jacob wrote:
> Introducing the DEV_TX_OFFLOAD_MT_LOCKFREE TX capability flag.
> if a PMD advertises DEV_TX_OFFLOAD_MT_LOCKFREE capable, multiple threads
> can invoke rte_eth_tx_burst() concurrently on the same tx queue without
> SW lock. This PMD feature will be useful in the following use cases and
> found in the OCTEON family of NPUs.
>
> 1) Remove explicit spinlock in some applications where lcores
> to TX queues are not mapped 1:1.
> example: OVS has such instance
> https://github.com/openvswitch/ovs/blob/master/lib/netdev-dpdk.c#L299
> https://github.com/openvswitch/ovs/blob/master/lib/netdev-dpdk.c#L1859
> See the the usage of tx_lock spinlock.
>
> 2) In the eventdev use case, avoid dedicating a separate TX core for
> transmitting and thus enables more scaling as all workers can
> send the packets.
>
> Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
> ---
> v3:
> - Addressed Thomas's documentation review comments
> http://dpdk.org/ml/archives/dev/2017-July/070672.html
>
> v2:
> - Changed the flag name to DEV_TX_OFFLOAD_MT_LOCKFREE(Thomas)
> - Updated the documentation in doc/guides/prog_guide/poll_mode_drv.rst
> and rte_eth_tx_burst() doxgen comments(Thomas)
> ---
>  doc/guides/prog_guide/poll_mode_drv.rst | 15 +++++++++++++--
>  lib/librte_ether/rte_ethdev.h           |  8 ++++++++
>  2 files changed, 21 insertions(+), 2 deletions(-)
>
> diff --git a/doc/guides/prog_guide/poll_mode_drv.rst b/doc/guides/prog_guide/poll_mode_drv.rst
> index 4987f70a1..1ac8f7ebf 100644
> --- a/doc/guides/prog_guide/poll_mode_drv.rst
> +++ b/doc/guides/prog_guide/poll_mode_drv.rst
> @@ -84,7 +84,7 @@ Whenever needed and appropriate, asynchronous communication should be introduced
>
>  Avoiding lock contention is a key issue in a multi-core environment.
>  To address this issue, PMDs are designed to work with per-core private resources as much as possible.
> -For example, a PMD maintains a separate transmit queue per-core, per-port.
> +For example, a PMD maintains a separate transmit queue per-core, per-port, if the PMD is not ``DEV_TX_OFFLOAD_MT_LOCKFREE`` capable.
>  In the same way, every receive queue of a port is assigned to and polled by a single logical core (lcore).
>
>  To comply with Non-Uniform Memory Access (NUMA), memory management is designed to assign to each logical core
> @@ -146,6 +146,16 @@ This is also true for the pipe-line model provided all logical cores used are lo
>
>  Multiple logical cores should never share receive or transmit queues for interfaces since this would require global locks and hinder performance.
>
> +If the PMD is ``DEV_TX_OFFLOAD_MT_LOCKFREE`` capable, multiple threads can invoke ``rte_eth_tx_burst()``
> +concurrently on the same tx queue without SW lock. This PMD feature found in some NICs and useful in the following use cases:
> +
> +*  Remove explicit spinlock in some applications where lcores are not mapped to Tx queues with 1:1 relation.
> +
> +*  In the eventdev use case, avoid dedicating a separate TX core for transmitting and thus
> +   enables more scaling as all workers can send the packets.
> +
> +See `Hardware Offload`_ for ``DEV_TX_OFFLOAD_MT_LOCKFREE`` capability probing details.
> +
>  Device Identification and Configuration
>  ---------------------------------------
>
> @@ -290,7 +300,8 @@ Hardware Offload
>
>  Depending on driver capabilities advertised by
>  ``rte_eth_dev_info_get()``, the PMD may support hardware offloading
> -feature like checksumming, TCP segmentation or VLAN insertion.
> +feature like checksumming, TCP segmentation, VLAN insertion or
> +lockfree multithreaded TX burst on the same TX queue.
>
>  The support of these offload features implies the addition of dedicated
>  status bit(s) and value field(s) into the rte_mbuf data structure, along
> diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h
> index fd6baf37a..11fe13a07 100644
> --- a/lib/librte_ether/rte_ethdev.h
> +++ b/lib/librte_ether/rte_ethdev.h
> @@ -927,6 +927,10 @@ struct rte_eth_conf {
>  #define DEV_TX_OFFLOAD_IPIP_TNL_TSO     0x00000800    /**< Used for tunneling packet. */
>  #define DEV_TX_OFFLOAD_GENEVE_TNL_TSO   0x00001000    /**< Used for tunneling packet. */
>  #define DEV_TX_OFFLOAD_MACSEC_INSERT    0x00002000
> +#define DEV_TX_OFFLOAD_MT_LOCKFREE      0x00004000
> +/**< Multiple threads can invoke rte_eth_tx_burst() concurrently on the same
> + * tx queue without SW lock.
> + */
>
>  struct rte_pci_device;
>
> @@ -2961,6 +2965,10 @@ static inline int rte_eth_tx_descriptor_status(uint8_t port_id,
>   * rte_eth_tx_burst() function must [attempt to] free the *rte_mbuf*  buffers
>   * of those packets whose transmission was effectively completed.
>   *
> + * If the PMD is DEV_TX_OFFLOAD_MT_LOCKFREE capable, multiple threads can
> + * invoke this function concurrently on the same tx queue without SW lock.
> + * @see rte_eth_dev_info_get, struct rte_eth_txconf::txq_flags
> + *
>   * @param port_id
>   *   The port identifier of the Ethernet device.
>   * @param queue_id
>
You may also like to add this capability in "doc/guides/nics/features/*.ini"

Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>