From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-bl2nam02on0040.outbound.protection.outlook.com [104.47.38.40]) by dpdk.org (Postfix) with ESMTP id D4B6B2BBE for ; Thu, 13 Jul 2017 20:42:53 +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=bEqkshyJHT4dCGbZcKaLYikvSOjD/EV2yKMJGlHp6M4=; b=QdZwug4SoY//0sV8VUwUExKcS+/6tGzGHPcCMA7YK549gcqxsKY/KKCQ554ur+x3TMHpKQaQAFaZvnl+bUIwy0GAlV+faLfuB2enyoKh7UOU5EgiytXhhnJEqo3q6TzKQ/ivn0Fhh78jhODyJOAtVpqcAdQplkBRdeD+fKOjfoA= Authentication-Results: caviumnetworks.com; dkim=none (message not signed) header.d=none;caviumnetworks.com; dmarc=none action=none header.from=caviumnetworks.com; Received: from [10.89.1.17] (14.140.2.178) by DM5PR07MB3100.namprd07.prod.outlook.com (10.172.85.10) 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 18:42:51 +0000 To: dev@dpdk.org, Jerin Jacob References: <20170706062120.3895-1-jerin.jacob@caviumnetworks.com> <20170710165946.31080-1-jerin.jacob@caviumnetworks.com> From: santosh Message-ID: Date: Fri, 14 Jul 2017 00:12:35 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <20170710165946.31080-1-jerin.jacob@caviumnetworks.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-Originating-IP: [14.140.2.178] X-ClientProxiedBy: SG2PR06CA0028.apcprd06.prod.outlook.com (10.163.105.38) To DM5PR07MB3100.namprd07.prod.outlook.com (10.172.85.10) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 68995ef8-d978-4665-4b59-08d4ca1ef7f1 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(201703131423075)(201703031133081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:DM5PR07MB3100; X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB3100; 3:HF2b2FWTXYa+j0NrrBpu2h0a/IK6zbhMzw1Dr97z5VocRLBz3Y+61KbWyeFYk8QhdPpJrOFwS9yapHPNVUK28U6EHe1nRCrfduLoVoKWPURooWnCi1avKAjbatUxpWGIobEdT7SnnnfTq+Rb7FfMsJj7kYBIrCOic+5fNPIq0S2OaUz4FrPJE2D/w1IOhJIc/dTMKvcxZRAY2fUkFCmu+6WEetw40/FDVz5xaonuLw6KadBV60oFfO3UB30zNYpOKUcI5XjYXaU6TPHStnxPTt1S6Z+I/vvRBR6y+Hmsk7SSTxN97Ze0TfjyigLtYCuTM5NN5/qeEiCNxBm+3Gw74xaZcrPOo8DNZSYjn/jM0BMPUI0lXiHiQnSZfvBeQrVbktJWGhHmy0fobpSes5JwjxJwWDaXA7NBPvq+XMQCHv49u2XBsfaSRWcEznt5vr4Yu/VNPSGFX/YNVJ9CLI1nRxyl5QWyROCkD38axVEp1K0z1u263EZ9ugvXIcCuyggdYdCUjQlXcygN058hiTKa7VeR++JhzcCZxvoyvFJ37CpYCA6J0EbRLCU2hwMOK4fX0NpI6hNXTZz6n9N44p+wtSsUCbEYN/fERtMbWXyjYh5kiOKqph4bT46W8TsjhdPPVm47DbUiQln5ZfY1lMGvfMNulzNssXw8yMAjO+YZyEPiaIGPw1FoBx/kFAIlF4dvbHUNjEJzys5Gcvq6Rz1Tr5o6OHFaSNjEqvGsc7QCzv8= X-MS-TrafficTypeDiagnostic: DM5PR07MB3100: X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB3100; 25:1j5V0SbZqNjBsC+SHV3ECA+Q3ybeskOcskSPsF7A1Mp3mgojPOAc5hMiDhLf6tS7RopzcbWpCCPpwKy8p5Rj6QUWFHmcccHJEYxm1SWXU4Q5BOUUau+g3t4braTpSJk0KrFp619UhBQc8GSUKxV0TcHVk2SzDWQKNerkaSy9ll0IYQE7EbzPGZfgPSoE6Ckkq+JKxwNdmBaDfaz2ndNu7h18WxWHq1wlrZVVbBzkdXMyNo8LpqUsbIn7g6y2Lq08m1dMKPfjGQ6zasJRQmwz7A3aqplhXFSXqvMlTpjiw34VWsWvgwuZmcBTE99Eoppf3fDP4YPFGd/0aX2qPpxvQ4uf6ao/zI+87T8u3zn6wZ2zKcGgmWz01qT8RqM2KJJ89wEqajCfqdshGKVvnuaNQCj6EZ70ToM4XuraFfK5pZJ6qzOum3j5uQKa87eFLLfkHW1RMJO5AY+kjHssQu+DsfradCFrgfNCBxM1Fo9aFVmMAMrAz2qKcCuqT9RJ4F9+FYxxwgIwHzBIJS1LRiX6t31oeQA7L71crk/NxPmsf6CMAgl0KwzvZDubKLN0PzkY99bNxFwotAGDc7mmGM5F1uQ+OUz0ls2wgW72/qkrjSqX/N+BrZNXzDz+l0mSTsZColsILSLjKPB3M9n5Ryzaxd7U5U3op43y8d9FwLOY8HOancqO2VBRpdJKEI4HVFcnzpCfXOAEiUqp/jb2X8vsnPYwlsFEfFMRtEG5cis4lgrQopOSss/S00z8cm8ClsByOozVcunH/0t6u4Aj/StdK40ksdFrTxe9zTvqo4IbqJZyer7CDU2cz58q76O4XZ18EFYXUWV1PqQTJ475aK8SHASM2pXZwhamSLo6pZ3ZjZ9KFTG+eOdRgzBv7/2YBlc4uBIy6E2ZUumwxi0wCpZ2RP5sJgTnDDtMmY3I8ujNtRQ= X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB3100; 31:Pa4FRYT+0+QV67WDXlACpAvEPkrh9IOEk2+mGTy3eoNBoY6WodPOwAqOOCQKWjN/l8mpz72Dn0B8FxKIIWIYxet7a7Lp0OAZIdDiYiig8LLBdktrSn89XORp3ZijMVu4kPCRQWVTtU/jse0z3vQh2DZdj2b40kIU4ALAavw40ENf5MmUYMuL4lVs4s9Jakx8Net9oBdgyTYfMNnCgfMVymH+A7UU/neG1C36iDY4fW08e2Zi3TO6rbAwhnRsTW82PwgX6rkZDEPF1vEU9X1G3whxwDPX7SIdznBmP2v3wx80Yw37BvIrKjnVqbHZz8y06GfSZTofVdfst3cUkoco0pJRpiXe7h0XEJ4fpFDZW7NPNnXdMyJoKUkIo10DLT/6tS94cS7egNtA3WPNMKliorBBFrApaPql8q2+gX0C2yHSYmp6REm9doiMZ2npYTG4spCJvwIoyIhktRwnGF2LXTwcrjQyGePuxZ+A3hIByBc9quMlzaxN2phjS8upAi4HUHAKNf/nKoj/8mOBNXAayUvcFETBEDSPffQGDK4/wQUWpqUj4b8jgDwT5+C1HTRemTypI2aVxSPEXaEvQzcQBW2KXlIqZ2gFVlGjjvkUYQUhrSX8SNPTZuK7oNWLOz4y6WAr0GvOLXcJ/Dm2heAhH80pwAuAf3V8A8YhyFUiwfU= X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB3100; 20:4o5l/Ef5JoDJlDsRDtKXIwTelL+dnF2E38sRNMNxMuSxYjxLR+8KnHUBI87mxcFQd/wHNtk4TcG+X5I3zhGPIx0nvDfwZClAETMTVVNN6sflY5h640h87E2dvHGyxzMUs59dISjnZsvSao/x39TT7QnU/6Wg/3taNd8pO1P7i28DkYv8FHuqrI8zsy7BcBbGydFFU/Y2b6Kbyu5MicGzPyrY0tXN3lQ3HexDID32P0Nr5ZvGQeiSsiaLtB+7WDgxDeUZ4I3Il/fejvTO6A4LZ9xi5wgbNPTI0EdzJdOLQdPKqXwr9n3gFLQ8Q9SE+C8swI9LhXe9IgAkWRoEXvYn3AAvL/zOHvIkBKvWOvpQU/91lJ8pnKfyTmnOZvxtSmDbGZtz9gIgxKpRiZvLNDZMjTLKI45cDgKVr56vzPBliOZi/ocZCHsLlNlPCF5/GsG+9KqBkeOxRw+O1KiGmvLc5nooq5Hgw8nBKzKZSTLDx4ZQful3tthWPHQAXWbPMbB0EvKvREviZ2kp9naRB41NRhZ0Em4X+ZqR/5ypoMu5fr3xtGp1hUl/GH0BFycjx/F/V9/I3UMjLdatR/UG1FxHOa0XUIUAKW43qKJBLn3SyRY= X-Exchange-Antispam-Report-Test: UriScan:(133145235818549)(278428928389397)(166708455590820)(236129657087228); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(2017060910075)(100000703101)(100105400095)(93006095)(10201501046)(3002001)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123564025)(20161123555025)(20161123558100)(20161123562025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DM5PR07MB3100; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DM5PR07MB3100; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1; DM5PR07MB3100; 4:0S1rWKJh9HJQ52z/Ufe8uYYOQq79A7Ie3l36VQ?= =?Windows-1252?Q?RDiqb75Vp5jtClakse2BgDjWIiv84zPCBd9laCqAK9DzT3SbfR+LGSIU?= =?Windows-1252?Q?O8zUSH5fUtFKtfjVMhLdQiL8R2jg8FzkCQNpaEHsuzsbJ2Pvs6AWUVoj?= =?Windows-1252?Q?iaS5xXucjFCdAR/CNjckQo78cCZkstXi33gDusmrzjh+UZruAQWJOYWp?= =?Windows-1252?Q?oatsigPotTwOxk2pSMG12JdPSfY77tk+1hLDKW9va/VWxgBLuj8j4RSa?= =?Windows-1252?Q?Oe4l97zdfp1a9D/lhSe2a2OatOE3D9zcMNijHTp31mHbU2J1s4zez2ZI?= =?Windows-1252?Q?GK75QOgVuaaAbSQOnsjdzTWqWD+ET0kZyK+fCE+shqoP+Hv/dF8wx7yN?= =?Windows-1252?Q?XTn/alKHsjZoaDEd8t36hkuX2dzv1TSUs/u9Ld6n0Fxg6mwsFv2ztdQF?= =?Windows-1252?Q?i9F6ecwju9DxGVtq4c7AtowGlYvEeP5/n2yu4jeVvS/hZNtAiBOz+n2D?= =?Windows-1252?Q?oKEypj7V5OhO1u9XNL1aXjUdKJsAtzXPMNAOpZdU3YleLY0SIZtyEHOY?= =?Windows-1252?Q?wSPv5sv3jpQNG4dH47kRn+39RVEVbFfiLB5dOJyh0t3RcQloWafqvq7u?= =?Windows-1252?Q?96yp26ydKUaNCYxYJy7N/Cl2B362Yfv/U/pUZusHh+K9T0UIrIB0Z7nx?= =?Windows-1252?Q?iEsOz2OzHgr1JD85gyZ7uJKoAzdi3FxnrGpmrk821GVWYFWdoUx4JeHW?= =?Windows-1252?Q?hVz6g6uXJtGI8mc3IBXPV4lyJKicv8MbuPFokjbprDlOrmQgIKaWPzn7?= =?Windows-1252?Q?GuIZ241yzxTyFzpvx8lhcOPoLdWfhaS/Uf79nKJGDjcSzK9t45IbhBbn?= =?Windows-1252?Q?nvjVCUF9/652kY2A00CNfvdTVQ37DilGAG/NrONMU5vXLlsD9rA4iliP?= =?Windows-1252?Q?H3DhIIqIHeEInGtj+gTKROOItIKehf2e7L4Du9Pd2tGG7Z54J7x994q9?= =?Windows-1252?Q?1OKogiiJoW/WwG6dcGlBWSqrurZA80+LTslEHQ82ZhpTYobwTdfYd+f4?= =?Windows-1252?Q?oYd+UnzkyMpA5cqnivkbzGMFsaSoXhFzI9eAOjNlvNfHtj4ipvOYR07D?= =?Windows-1252?Q?0XBtJ4W0Dt+KXwgY5kfhi4Img0P5Ip6g6JXaqYJhkaSY5e2d+kMOvylI?= =?Windows-1252?Q?oP0lxLswJXtwvivYQtJGtNI+8ZipB7tXYlJAOvLyyIpY26HSqq2xWpMj?= =?Windows-1252?Q?/ducTmyhuRvqnvVpQd4KsmZpJ/i9AJhsX9lm+0M5SZAErT7uSPBiDBXo?= =?Windows-1252?Q?zjXxyDgqbhrtq050DdmlwmjimEnjiaV+p97KGoYzB4flvq60CwoT6PSH?= =?Windows-1252?Q?NLu/KlY0veZC9+FUKh4UDUqu9BfU4JZWK9UFiIzjBIt3WgXeVoE4w=3D?= X-Forefront-PRVS: 0367A50BB1 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(7370300001)(6009001)(6049001)(39840400002)(39400400002)(39450400003)(39850400002)(39860400002)(39410400002)(377454003)(24454002)(478600001)(50466002)(50986999)(6666003)(65956001)(31686004)(42186005)(2950100002)(68736007)(6486002)(54356999)(81166006)(65806001)(229853002)(77096006)(5660300001)(72206003)(66066001)(76176999)(33646002)(8676002)(6636002)(966005)(230700001)(64126003)(6116002)(7736002)(2906002)(3846002)(42882006)(83506001)(7350300001)(53936002)(86152003)(6306002)(31696002)(6862004)(65826007)(25786009)(6246003)(90366009)(23746002)(53376002)(110136004)(5009440100003)(189998001)(4001350100001)(47776003)(36756003)(305945005)(38730400002)(110426004); DIR:OUT; SFP:1101; SCL:1; SRVR:DM5PR07MB3100; H:[10.89.1.17]; FPR:; SPF:None; MLV:nov; PTR:InfoNoRecords; LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1; DM5PR07MB3100; 23:i+UsS8ikkR8/zMUEQrZdF7hQmK6IrEIFRjd76?= =?Windows-1252?Q?bsfsQp14ZuNrYeKR6Rjs0Dm52055OI0PLiJ8AopNl9WEHPqYiklDEWle?= =?Windows-1252?Q?gnucJPFPJMHqfrdt1DXKaXSbmj8eLHRWJUnx6+RMpcrWh03tc56bVBQE?= =?Windows-1252?Q?FNi9hTrCGvd/MqHpb3MxxmMqQeFdq8AZv03Rvjj/1JvLcOIAdqXfv86i?= =?Windows-1252?Q?BKJJid9HrILZERjbAs3H7NXK/1Sz1gL3ptjsjmk3ZNXxHjMDNA1w4C6v?= =?Windows-1252?Q?/627BaH1h7bwxoY1VNJVAky3U8v7EA9ni64Cnxhk1FF09Wwp3Qs/kRZ0?= =?Windows-1252?Q?gQEy71Oy0+7REKd8TjryDiR6mv7bBFZRZg2whGQc3rT9+DJug/tlh2yE?= =?Windows-1252?Q?X7k70sYjx4O/AiK7H/Fi/FOV/VKCuyNv34UH6WDKvuIjGarTvuNeIpv5?= =?Windows-1252?Q?7VjEHiZ66guWE2xacp1OXYbAM+BwKlPt0kos4zRFmdRa1s4Qe1J7alWd?= =?Windows-1252?Q?EJvxrYcFwxu5gQOemwrdzPi+l8OTw3gLA/elpzKE6DW0BY9uuMgkIyeV?= =?Windows-1252?Q?PfCdP6asdO/gQWtlaask27SnlRM5ztqY3u8jDgK7ZtHHtaJU3Emt9DDP?= =?Windows-1252?Q?BFmWyQgrxDWGgLs1/e5CLCObv7URH3QxVRgOrYqCQKcdgXz1ve6YVjAe?= =?Windows-1252?Q?SQuQJl9uSq7nln8aufnk7gcLjTrXRVRNE0ilibzXCjQD17HQ7F6HEqPa?= =?Windows-1252?Q?0x+46XqviNvsx361PL0jK0C6a4MVPtx6fwBSztLWSy5seWk1I/835dlh?= =?Windows-1252?Q?Cx+OCw46WaCSqk/yU8lKCAUq06O9iXX5r9COl5YJSZpBQ4O+YpvlungA?= =?Windows-1252?Q?GZwovigIiLuqS8PIDSQZY6fwwIYni4LzriaIQLLIMv6PHN2cxCyjpu6/?= =?Windows-1252?Q?+OcEKrBcqMLGCoslWhsTyh5OHJob3b0O8CAyf4lzhF3AmqcFekdW3WOU?= =?Windows-1252?Q?2oai67tvU4MmjklXkr4JfSWqVNHyNNMYGzccGaBk/UyYpHRGm32Ka0hu?= =?Windows-1252?Q?KkGgXxl6Kw4L4lBHYZfFoXVky1+1ZQ/yq2FgSNOmvFKw85iOz51K5stU?= =?Windows-1252?Q?9PXpf345sibP7RRvYeM0Mg/0HjZh0Ll+iu1wX+rPwZD3hakoNyo8gYkE?= =?Windows-1252?Q?NntOQ+j4JrztupviTeB67znzPavjidjzbvTzN9W1MOlnPAyEO2fWvRXN?= =?Windows-1252?Q?DmB1D2sB7omit4yuIVUMKjmdTOByxGMP4PzM8dQokek9mxfGF+LfKPCV?= =?Windows-1252?Q?Oc/MLQdOeOChxSjbrn+RwOQEPDmwFxIJS9i2T8GWwjC+cOnbgA/dvP3Z?= =?Windows-1252?Q?ABPHFmzyomAFQZO30f7/P8n7qFDuCMo4UkXpDvayaNlKWR4tWV3v2+OE?= =?Windows-1252?Q?S31Eh5a8IquVJwP9PA7SrilEt26Sl4SzdG6CWBYV3zK93OxBgqjw+Ryo?= =?Windows-1252?Q?zm9+mSqYU6Jeefaj/IPmuMclFzUrLmYd5MyyPPB1r8blD53x0AP/ynV4?= =?Windows-1252?Q?DWNLQOgJCcP/5KW48Hw8AT1M7+M+ntLG8uqR0tvP6xNlsh+Eick48qeP?= =?Windows-1252?Q?B7vpIDJCpX4+OfAKMZChOm1RGui6KosLWrQz7IuZlfLlvxGV3xw/UHZM?= =?Windows-1252?Q?wkxuD0fq4JMVNmA1mHLRP242b3szWo=3D?= X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1; DM5PR07MB3100; 6:rEMqS/F3jUIvp3S9Cv4fqv8KHFASRHmslPeqGr?= =?Windows-1252?Q?Yn08lg7y17kMUcEfs8GQERlB7Akb28xsG8WXQPl+3XHNPhyjVJ8yZcoN?= =?Windows-1252?Q?JBNYs/c0ayNAnh0tKCFzepivCtbXT9sxDy4frslhdVYwW0dZS1QGVT6z?= =?Windows-1252?Q?d124Tnv5XeraNol9rtFifWUx3FiOjfuHdb2EK9p02TRce5x5vvrOn/Hp?= =?Windows-1252?Q?sfzRia1EuGCEquMZCjx1ajMRPksaovyCktxxfsowiGqFLZsikdmLq8Ci?= =?Windows-1252?Q?E1dD0AcnBok3U/Pq6/RpmGeAu6nZ9Zkxch/Kc9i0nurw+0MLObVmguDd?= =?Windows-1252?Q?SeoCDBZhNRdWXPyiMK9Y/HIJon7/OnmJX/IXiL9sfNEdMfXDCEa/fKcU?= =?Windows-1252?Q?gDAbzI3badBnVLTgwaYTrh6ZR7C1Ai+wrtnyjrVEqRpeBLjRgBlk/2Ji?= =?Windows-1252?Q?nAvHb4O4FzqncgoAGwLbVTp7oZWMLjJcU8DR/a43KN6/FIHHcN6cLQvo?= =?Windows-1252?Q?LWSDpBPo0P2EdRlwh0wi69mjf3a54+u1hhlVzFQfRYAPccBvpGlWXrm3?= =?Windows-1252?Q?ZbiUNje4cnIj8uzAs5BDi0HmqVEKvWirG4BG1PMcGNYB3RGl9EzLlbLx?= =?Windows-1252?Q?gk58hXsETOjBVxctHaFggEEBr6py1mek52S5gGQM4q6UZaInZk7O/+da?= =?Windows-1252?Q?hqzj3M6Z79cw+eynGUpqg6IzpLZUtqrAqwDfWgfl/DGqQwe59EkgSSA1?= =?Windows-1252?Q?IhsKdgiUB6gyPIFZJGwW6Ra1yPDh1aYlFNeE3IE7WJcM0N7Mi3kr02e8?= =?Windows-1252?Q?Qc093T+rP6FPKzqS1OdHyJE4K9YEiGdqtgAvYHciQufS/8ZeOq1+ZpL5?= =?Windows-1252?Q?aesijXyz3z55VDJpy6+6hrlwqsnmZ18RvgBzXI01pQe9c8eqY4F5JxWJ?= =?Windows-1252?Q?V78VWJCkA14dHP40GoGWguS3XB+klI4nmkXAFH8FdTrwr5kVRjiKgvUe?= =?Windows-1252?Q?ZDMHOA1nCJF75CyyWyN6p9DMAIzgccGTShm+swiCA2j242ZIGyYQQwdd?= =?Windows-1252?Q?VrJZLhOZk/pP0=3D?= X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB3100; 5:5eCQnbNZhBvNiLeTd/vYyBlbEjVuIMU5d+o8CRlw2sQxPSQ1bXz6FVMzduhj1G5ZzMcyPrmw2z/bn9pdW2pFjP1H00YU+OcV8UV3hz7fPzXcW2oKHzx/2a4sbtI6QgmXGEFB41RYb1anBkRd99q+5Z9ZMY6MOpuvULk/iaHRTYbjlQd1PJ9rJWYGj8iVuxxrS5nvDUF2P5ePugZ20H6bEwY6inTNKQkWzlPczGUd94rFOPlrEMtcL/sb5br7SSrTdqOGa7paNPmSbEVQt+xWXTF2SYcFheaOmL4zzXnT7XzlrJtkccCLSmxK8EvbTNe56VktVlWGWI8pFyRDYrBK6qPzzGpYhf7gaW/w32uEeYmk45ihSpHZNCtRSzJAqNmx7l1fgSdvEB5+f7g5H1VD5uQlr9dh5MQBw2PX2luthctZEcdCztkOksPjhYLKyOxxRpaRMBhLWyBBIi+yWKO8pH30YpdLmc6/suvHQaiLO1KQvQRZITfBhoXZYPt8qdzb; 24:BoDR+HA5qfk7SeDRypvQc0i1fD7/TPKLanzwK3nVik3TldYqvCIbkn2YMxGitSoNEn0xPAoO7bq0+n4EDWa+v0RstFRHyg8odQwEd+YOy4c= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB3100; 7:baxiLUuk/r3TADJqzopi0BK7bnVJt+O2vXDPpyXDhPT7YusQtezEcZepabI6OaP8ZcZ+0ARuktXkxWtKks5jI3bKSv3lRNj+Hhb9TPdebI8VJ63qcCEnq2zMWNIgoN1cNN+RTNjCmUOf6cOTbZQK4waCx5Bw0FeY3FpTSAsG8Koynk93DLQlXcNAiquNzqZbTMU/fX6WZlO+R4G2LkbIIsVl0Bs70DxwuqYbcUOCVE9IlXnW4Gh5I+Zifl9KJsNfZQ9jEUbAzQ7qiGxGOrEICFkxnNPSLX0DxK6rReW66BXTvl66P9kF3ofsbRatajzib2VmsbR9yFmn0TCZKm+/zIvuigxpmhsF07eDKdqyX4lWSUH574YiP2NE2wWvCXoWo23JOk29AeVJK9BFd5mLrEmAdkyHfxUjsg+S+Gn6BFdIkjIYCTOcy+tLVstYLVjb9PqwCKVuyYfSQ4R+JWwbixsRVGtrWIXyND7rRBqRSqgBNVuU5OQulKpE5I9b4GPyx01COgy0YJivksY08sItDQS+kiLUaJ5cqkvQWMbSeWoI+vMSbQbq1KytmaFgxtfuJpLz03NM0ZHuTl6LCvv/XpIPZpVy8tNzRyHGUkm72bZdYotuk2JPy8ebRw3q2YE2l8JfX3ughdDKCubWKiJ6MDdnzAYFNNPraKGHHmE4wPIrcZExeCBaDtspLEX8RscdDGmIIH9nWb6BSLoQcQeDAaMLBc2Dr3vzsJVXwcopwyAgwAfVPdt7xDLpn12E/gVC89kxhcFz5thV3LQIFRoHmR0KNlMr2mKIUhCIwKI8/YA= X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jul 2017 18:42:51.1979 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR07MB3100 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2017 18:42:54 -0000 On Monday 10 July 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 > --- > 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 Acked-by: Santosh Shukla