From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-CO1-obe.outbound.protection.outlook.com (mail-co1nam03on0087.outbound.protection.outlook.com [104.47.40.87]) by dpdk.org (Postfix) with ESMTP id B28397CC9 for ; Tue, 4 Jul 2017 06:54:42 +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=x8BrLWXJHyirGED85qH8nqGHhlWnvmkQNJ+WWwqmjT0=; b=Rgi0Phb1KA7GP8ZLDPRBOSo/KcQfp1jIJu/pyeceiOi7pj3dpdYT1j2RqFw4ddZfdprziCF+U5tAcO1IWjfSSHmMcJydX6sEcvez1Dz+TPVFpSe6KVoo158VcY4ufGiXzMATXafHnb7xivp9Yg4UYmJpW98Z3QPKdI+Gi6DUBk8= Authentication-Results: dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=none action=none header.from=caviumnetworks.com; Received: from jerin.domain.name (106.200.206.49) by BLUPR0701MB1714.namprd07.prod.outlook.com (10.163.85.140) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1220.11; Tue, 4 Jul 2017 04:54:37 +0000 From: Jerin Jacob To: dev@dpdk.org Cc: harry.van.haaren@intel.com, bruce.richardson@intel.com, hemant.agrawal@nxp.com, gage.eads@intel.com, nipun.gupta@nxp.com, narender.vangati@intel.com, nikhil.rao@intel.com, gprathyusha@caviumnetworks.com, Jerin Jacob Date: Tue, 4 Jul 2017 10:23:05 +0530 Message-Id: <20170704045329.24711-11-jerin.jacob@caviumnetworks.com> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170704045329.24711-1-jerin.jacob@caviumnetworks.com> References: <20170703191402.3638-1-jerin.jacob@caviumnetworks.com> <20170704045329.24711-1-jerin.jacob@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [106.200.206.49] X-ClientProxiedBy: BM1PR01CA0106.INDPRD01.PROD.OUTLOOK.COM (10.174.208.22) To BLUPR0701MB1714.namprd07.prod.outlook.com (10.163.85.140) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: af2a8079-1d78-48dd-0369-08d4c298c7c3 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:BLUPR0701MB1714; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 3:CBHj/JsCjYiBrsBqwzNzDsp2ZljlizOJ4Fgw0oypTeiXZWLyG4YkG/1Wc7h2Zpa9utkQMYLkef8dytCX7oZhXj1hASyag3VSCI9Jm3X0oKMX5nJST6n+wG1NzFGs9YGZLfR3BbPuOiT3woQ5gMGm6VYEoCMfNHNxhk0/9AVUnwXxb2QmgCSkia3FAkPau+3UtvpEaUyZCVq+cnJoVx5Yf0AmMxqYtTwQvIWrX3ETmYUiCDyME7AFIgVSPQAdo2DiqTAmT4lYu1ovQF1gmldH6eo9iFT0TqKoZT4u6J40LpNy2yMun29z3ZirKpd+/bQ5YHMlR75IQ82yBazCly9jMCMqo8e0OGK4EviSBbrhM2QBn05CrR8H0NbCrGUaJTDddO8Vqdxs7ztWeFyO9O9uo6kke1jsJXTY36cUdiT5JGKrIKiMhvgVdzVyilRWc++DascEAWjIDjxy8fpiNcWQtfJihmrKtasRbG89M2Y17raQ/rz9S1xvE8GRR6WS0SMlM+6ZF17ozHJZXUV+zwWT09BnBknNE0h88c7/V+rQmvGHYTJCeMquRLih1aWJiHLCun2dLxtJK2WmLJNK7xGoKj2U/OccRV6+ehWLyhSpVFB3BN45dUK6SWQYnJmeWXX/8i3V+dAhHFJLl5S88BlOjVJyIApID4P6VDoJhbiuBdJDYRy1f57VacfDmrunZ7VkhW3AvEqMU1s/Soy6b7KkC8s665A4PYCfuv3MrnJJlCHgnCEnxloFiZYydoLPbcoO X-MS-TrafficTypeDiagnostic: BLUPR0701MB1714: X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 25:gZ1CD6rIF1P6cqS6bTczeqN9kR4yFMQ9srnemB47eA9wqfLTxdT2r+E7MWYgt5W1S5jek8ldKcT3LeIoKLLdrlI1P7+0XwQgwotvMJPH+fQP1MWSamPk/7ql1zwL9oBFTkijxt10c7GVKJvgEwqTrPoupy0YK1gd0bWpuQ2Hk28Kc+x4r95Ci3kM+DiTFEypb3sCYsqZrfeuFhjjX0izDKnzOmussmn3E3WYUbYJhskSu/8vQcBaUTvf9krK1ybAJSgMTmYbEKXSYinich58ZouiG6QvB3RV6Z2dxBSmYo8+igT3d2pt/k6EeCy7pCE6dgyC/k7+UQHqBG7BSK/wH2ZcTT9cf70FjuEt8J40zqQltjBkFR3BjidMhn6Wr43V45GOJFgAay4vbv2rZNopNWrY5KBXXSge4NtZ2cN/4B12px9RVuZ1XGU2tScBsTvtegNSGdzRpL9kvVnDdZP4bzr+oX4bN5S4IQRKQo/7f+NfygrgQCkNV4FkC0FV65AZ6/BgPu6p+jbJQOhGubSsRv/uNRvODK4krfXVCvdPVXxlwEsjoZr5fhDVb/fuu9xElEoswiJP2NsoqTSMr4c9Zw4XK/YuB1AB4U23nWsm/bzqRMDwpQfPgROSueYGAxJNbn9BwisH3D0PaUUusjjxa3kiZtOWlD3fyaX1+QPPqvu7cuDgL2qARPL7142Zw3NcW2jj50z1rQZ/x+OcrXxIZvLvrOxAeSC575z4+c0rADM50ED789q7tMU0KQmXlf7NvSTd+Ge+Z0Q1EGpG3ogjTGzpUM+9hfEDJC9YoYN9dScgaDC0enD0i88QOQefk9N1oz+fqwWqzijqTX9sVxo6032S8lG33y99M5egKCFhK3lxEhVtQOWHeXuXrwVrQfQKl8agca5y2hYjFx5/raekICCIkBR8guN05SuKK+5K1ZQ= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 31:k/Gf8x6pFbscK6Sg7JeV30ovTlloeqMkBLtYtBgMq/2L9bbBLgBkw7LzL561unGPoLhu4k25cLmo9+JsyMU/KuJtVM1KXWgTb+YchKGzCYMg3nlj4zBShrVyA07M+xnSYTXS7UPxw4CzBD8SFkTtH1qdUbsDbjaJx4+R5GwGQ3jIX40PVygPkJHdufuR1Vwx8ou6rWTXCpxFXOfbGGz62C7WDkDHM+Azeo+bj2705u+VQsWf+6rY7eYlOgofbt4f9IRD9udrvXLZ4HnFpeA2w8WMuyRQYLSxA8WK2nphKOwAN+ye1SrABhju1XyWGjAZ2NWSZbHFV9w3JsYQ7m+MxieDZ7T3J7QYKAwaUqxHybRpqrq3goXhiX6td6u5baR6NpZp9RllZTbRsq9DssUThF3wjucT+y+q29mn/SHmDYmtRbeHX3njkWabc5dsu+ksoyLUohbVzhPKifPmmpRu7oNVDqSV/6zTIpjklsuiD3Iq5TxhrmRNYVk45GxRmFbltzGqwDpbOJgOycnJypAzz+pFZoFCB3LQdzTvEg69vDXH2o8kNCN/2cEoqCdJlgtQKpBLALllAZ9eEyaZG8ijuZL5GFf4FO18G66tU0O8r/7PLzH4PKAf2Uv4+yjttRtv/+7Yf0RYI1PU9Dt+LZJtXxhB6SlwYX46ASk5wWcUwWk= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 20:GKtxO6ERE6r1sOI6DcyuaTDC67dUo4kZBOePLQo4Ze9jDz64N8EwSqQV4po3MQRO7i23p96ddKS+XQiWz9kkAFVqOCh5K33j7eEplEOvTYyEMA5zpcqGlgz3ixmu3ai6GYKn61HX+7edPGCNRIFYEc1rWKlvoTgvoLkuE0bycrLkPeUx18fE1CEgWAcECHsfPfMHbGGIdNw8S/rSFdDRhD98EXiGpEy35mdX17lP2+mVxT8+jnQL95IieCFMfQTXExkJ0AN2mCstzaWxURfZaA1juDtmRLPaOerWfwfU2rov/C2EnWjvF7sD9bSw2G8tseefF2N8nYhV6as/lYBP55Lg6NIDgsKWQtJEzOuRzUpclqn5GPNOyZYIFeizcIAn93v+8BKY/akeZxoHxlyI1H/YiqqEG3SdqNOSK9qjEjc7yPojvv0mmEOIqJth+468Fn6tefUDGgttnS1Vg6jFLZ2BMKQwkiZMxQlSBLumM64TVgO6PDvN1cGnOFbqZpt/S4hlA5BN9KttmcSgZVnyOYlr8h8dLJ8OvjBSv0QYhcSwN5M3R3XuI8ERNzDFuY9C8e9r2sBLGIAnQcGFsx5rstxmfU4KxbD9xaufIcnMLuc= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(236129657087228)(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(93006095)(10201501046)(3002001)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123555025)(20161123560025)(20161123564025)(20161123558100)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BLUPR0701MB1714; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BLUPR0701MB1714; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0701MB1714; 4:nX8d4A20MnXjHPd0a5zEz1+tLEoGeg4EHf0rmFDV?= =?us-ascii?Q?7OJxEG6RtDRKXBDmJ6MIODDvrgkirdi7atOcI6QQfaEWwHIW6RObh5KXat7u?= =?us-ascii?Q?YGuFDStjnXWIbDcrd7H+tWFgUXfLzhTnjzIAvZfFNb0W1G7Vm93l4J7SQfqg?= =?us-ascii?Q?rxToMb6IA4sUaNtmEO4D6/d2Eha9pgjQ/Gvy8QNGRg1CZMsjIe5CGGZOW4/h?= =?us-ascii?Q?CBNKAsP3wR1cc5a76NUseyW9QKFH/v43eIo+QwLuEVaSuDrq+Ud/324Lk+Nt?= =?us-ascii?Q?WcfqO5zKTGVFtfJmfM94qyLg89KUdRFdI1juLaFVyg7FQL7i3jg+HqNRHIro?= =?us-ascii?Q?ceVH6ylGtoZ8/yIdDIgsPK4QrLswrETJoexqFHTqwqcZG+OYBnysgqIc8H/P?= =?us-ascii?Q?AnJZwtFIt61yGMEfNXfdA/HbV3hCDzcjIAJbzrBAymWkz4eT/Qf8RyAYN5vi?= =?us-ascii?Q?LrQsh9O9akuQsiPx9FDKfaOooSL00sSikKX1R6xOIiMtyQ+AkAQQfyYPTgQ4?= =?us-ascii?Q?fIbl6PZMQHh89pUvPdggaSgQRIgoQ59oXEA1+uqxb6brrT3nznTU8YykRrzp?= =?us-ascii?Q?upmFGVigESy88GRLUdWPI6PDOUsLnIECY9CXvQqFg2cP7HCgFHB1MJZrbvzV?= =?us-ascii?Q?855JnYbjW6VirL6uPvcfhDPivtd1qIsXmJxrY/FBQO8H+7qK68vSkG1wJPAR?= =?us-ascii?Q?hyYVjagZ3BX6+sn+GOzcsiOMCXtT3E5JdeootvxBe0AH6MF0dQTTQqEbIEgt?= =?us-ascii?Q?31jTrf3EP6YyamxVat8TYcPmVJMXPefHyKeWgK8ZByVe2K4kzPrLNafz7/q1?= =?us-ascii?Q?T00fLTyuTlJGHe3EfHCLabgFiLZmwWTye9HW9ZC+UwMYtx8odVErPGwyvrJQ?= =?us-ascii?Q?pZLSkybCkZxQ5aM2UlcH5HH5q9yUA/J2DRP2ce67OF3Yr1w00GTKVpkQ1lF9?= =?us-ascii?Q?llURro6EfUHmxfs9AvvJHK5URtszGQmBfvfELwVzj/Jr2z7lLFk1p3/MweRw?= =?us-ascii?Q?MRliGA+lpeaTSPJoWPdZGGBHmAv4YhHTpgWXnzXZoRyidr00O1gSel6QiEai?= =?us-ascii?Q?dYxcJX+u8ePAeChOmoM5l9Siz716tJL40kcC2j9rRG3g2QrraFpEea31AxAw?= =?us-ascii?Q?NSKhHfN1q/BOhmiJYosWa02Go8VFkLmi8579Pgjtsm78jugLgHByh7TdLIKa?= =?us-ascii?Q?9I51sDPoX4c8WdY8DvkG9RdbqveodYVBszHi?= X-Forefront-PRVS: 0358535363 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39850400002)(39400400002)(39840400002)(39410400002)(39450400003)(4326008)(107886003)(38730400002)(6512007)(42186005)(6486002)(8656002)(6506006)(33646002)(53936002)(25786009)(6116002)(6916009)(1076002)(5003940100001)(3846002)(42882006)(47776003)(2950100002)(478600001)(2906002)(6666003)(66066001)(8676002)(50226002)(48376002)(81166006)(7736002)(110136004)(2361001)(2351001)(5009440100003)(189998001)(5660300001)(305945005)(72206003)(53416004)(50986999)(76176999)(575784001)(50466002)(36756003); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR0701MB1714; H:jerin.domain.name; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0701MB1714; 23:h4iQdSDhcj2lXf+mfTkS0gfewSfqcfR5Ir9dAIo?= =?us-ascii?Q?q+8bhgEZeztew0UebhCtRTBOhXHG5smUg+A0HFTiPgwLkWKdKb0IyAXZ02ZZ?= =?us-ascii?Q?oLelwIEobeyynIN051Y5rV2OwCEtjcidJqzUDL1LJHCWuO0QcbC/oUaRyKa9?= =?us-ascii?Q?HXhbOJO+joLmWSbENiJYjbRzcKFGhGwij2EGlu37jHuSv9WCKTbuQ1XoIp2T?= =?us-ascii?Q?v7woWll5oe+EXz2XD/Z3wx28ZcaXjcKyTQ/p/cftqr1SdotKTMgW2GFMZq8l?= =?us-ascii?Q?Eoh1cIh205RHBdZLQbouEX1W1ZiUqMjnlcB6jJc7Yna4OZWnF7TAciPMebp9?= =?us-ascii?Q?bVsDAjLqSK2VQAaPF6GomFd3I9wNYmRgf4I16Popy1ilSLlKqJ0RYGZ/qnYw?= =?us-ascii?Q?S9nHVJHtKkvjaAjtRxrGOXcFvnDRuBg1AlGVBHO4yPj9ePAIpm6TF4Pq17nw?= =?us-ascii?Q?S3/EInc3St9uxq5TNgPZd0Cp6fJE7q239DaGtpPgRg7JcFFfBS+t611aztUm?= =?us-ascii?Q?AgEVUqM5M8lnO+NPhlsqGctAlasxPcF6lOb8wnWDHM/7jZ2iVUAt7rjU/P0t?= =?us-ascii?Q?HJW+59gjwmSWsGVZh0Duh5LmPl4HWtzFOspkZdDA9TrEtd+4X/k8nLiugvDg?= =?us-ascii?Q?YRRK/PAiRCUwgRMK0bAZZqCRxK/fk44ch9oYUtvgriVrhvp57MlCfiVLjews?= =?us-ascii?Q?220tAGzKU7hL9YV/qrE8ufcvJMTaEhH9+0YeOa9qiruBGzGR0w+GcMX3wgGs?= =?us-ascii?Q?ieAzcsNY+x75vUNRvCrA2c6H3f4HJDE3x9rqvTaMNNq+xhTUodh4IlVmqxSk?= =?us-ascii?Q?+oH82CmqXXabzeyCBPxsssBO3UwXaZS+PUBwRVWi+O5HkbwjEJ6mRR6NC93B?= =?us-ascii?Q?pumsTJaQUuUnrkMijj1JqKRYwlJ6PmfOICtTWl0W6pjp/ssGRiuxQx+1Xqh2?= =?us-ascii?Q?cpWORYVx89K13ktyvlFEnU7UjnhZP19Q3ZOEkHGtfBeWChiU039/4POpLBjj?= =?us-ascii?Q?sQMUKLNTy7Yu1+R7eSs1vYCRzo7syW8/+UZyX52WO628ZdjiSNQ2S8JiW5k8?= =?us-ascii?Q?118Uq9Ln9fx4VOTCVYhim/nSdISEr9spBTukABRjoacr/7uPV5lcxR7l8IaB?= =?us-ascii?Q?VdAuu2qj3dNjZfYFb7tyFjeoR6vwIJZ0tS+JhtJ9g7ZKwWPmuLv7hXdjvjhL?= =?us-ascii?Q?2JcoIGK/0SYGB9dI/vkLv3f7js9XBIFat3HQwJiXIYylcCtaEyHTXju0QOw?= =?us-ascii?Q?=3D=3D?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0701MB1714; 6:ePINr3ytTz//Qp0/7LmUv0NN8Irtow36r1HdEVc4?= =?us-ascii?Q?C8QAIuj3kAm84BPsb2+U/Q165rhB2zsbNOtM21UcbdlydnVhv7O7LoCGbLcw?= =?us-ascii?Q?MFT+3puARW+sE8cb5qNyrFRsF2YcaHGqxMrbhagO7T8SH1w6iWcd1VvQJx+f?= =?us-ascii?Q?I0T1SSdT3CIid55PfDwhsmcsiEfLUduTETiQc5hJcpAYbHN/nORYCtlPcNTH?= =?us-ascii?Q?Z378kOPj4BDKYyO1xnvRF/KvTzZ9Ueh6ug9cbdC0oJencgqnHqWbZX9yWcSA?= =?us-ascii?Q?K4pOF76IqAOd43iwAEWhuKrYON8ZIXK8IcvkdITVWUJj9K6GvX6N1g/JJUF5?= =?us-ascii?Q?BQvGNZ0n7xf8LALR2Kq9vBJVzyiMOkZZ35DzvYKdVugJCh5nAk+yX9BI4J6V?= =?us-ascii?Q?22k4lqEuDwcLD2sPa4EsEUCx51hTT8NMkLAXE20lIWm8rP7oN75iBETJXNeJ?= =?us-ascii?Q?ETvt28eGOwEam5OtIp1uD3xYuB9GBs5PhHUW2vXFlFpIrM26Ja5x4w6JGa2z?= =?us-ascii?Q?NxIofBq1hy61Fga5DXmqnECyZG6e6DuB938WLv7Qe8k8eAJFMOGhKu7ErtGn?= =?us-ascii?Q?MWjBR6401DdsMOQETVUQPBNZa6Om36ebIQl37EbC8LdmLjnip0s6K+L0ZWrk?= =?us-ascii?Q?KkjZThYOAGkytMQuyUfTUL/uSUyPtYlxJJ50klBs+ybhJXykQNo9Ky95X6zf?= =?us-ascii?Q?C8i7djHS/KGlR/pTbpDhi2yn6WJ++rlPvP/6GYKanjawPYP8Zt7RlCIVOI5N?= =?us-ascii?Q?hQP0r7OOc8clhNJUnf4Xw0wR/2UPNNZLVdlLL2PCSwkmTMRK5QDZRrg4DaGD?= =?us-ascii?Q?EaK9sVgXsFYccEb1xILmkAOfzPQfXWnGZQFzop0hXTVyxh8dCYMnYvffuPUL?= =?us-ascii?Q?iJJ7gftvVdHGH3V1iAYaN4baCdbFnHgoY3vxCYb9hD8C07zvtVZrCc0+bfb3?= =?us-ascii?Q?k+ZXy9rNpWPWYofXwZ7FxNNiFubuQwVGOY82UTVW1YUhwaWlDgJ8dDIDeDAC?= =?us-ascii?Q?v2Q=3D?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 5:mPmfp8g10bhUOFQ7dkw9SQ9usbHHkkqNyNj+O27x8Wt/tC5VjvcXU4XDoN5Jnn4kpvpwBVRkwaKV/yHhJd0i31Papbd4Ge962wkiKZD3pAYtGpxP3V+4xT6Y984K6W7EkLKmGoTC3MfBd9hAE5bHdV6C75255TLvdxGyZgKt9xF65ALcHhwm97SQtwqZvI3zc6QLNn9L54Wei8ug58EdGGMDTifLjKTWSQCMxD1FhxB5qpDtz/LB8vHCqTsXAhXUXABaLpuc6kCMVOOJoAGfbPB8Mx3p6YL20JkRPR7mPFefa0wHnZK4g1chVOcXCuPkQk4Q4ueMVuZtvurFINUK7GOvdaYAUioLSFh3xHG2cXqZ0DuanIl+roLIdPSIMjiEyF6atdLz7CuxfjqN3VOhRXoIXCgNOvIxC331NqCagiSYOIejeKgmQ6Uww976SqJd11gk7xDsosbb1jmdW12CUwydUPqLNS+sqYXASLd2qwrMtaknEP2Lozr7JQs4XFGQ; 24:5kvk8jhuvxQ2K38dslCyaHCfVWW+P+zqceSpGLlR9zU5ZcJ39hV1EBpslK8JMDDzbJyjKzLddRq9DReQLU6Oqc+fx4Dx4WHzncODfpajClg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 7:t4399MhPPo9D9euS7QQxCWW9qNUqL0TFaM/2C4p34nWet2VzTIs1YGAi6s4ivniw6NEop/ZBhDyoqh+70hF2iL9N45CAsnLfo40ycl2foKy/YiXr9JUgxeglgj4HNq4POzHT1t25Bbg9oDD4Q09RxSlvk073S5pZm2C/Xv1TxwfDSod4JpfnQTaBzLsCLQx+3HISKRHIqmCl+lYUFsob09cDMjnrmU6PvHNptMLrDyV1G2Dd4nfARgv5wTCTXGDTA4ohaNk/lLKPC3L3bT8/x7DumpVEmYdJduY4oZs6B2t/fbSO1YMbAkAXV9l9d4TtXHw8xOD2PJaLCPPnfO/FBA9tz34kof5phd7SWqwtgDWUhITGhbYg7NarDFx7ja4K4moAXouQwCaQ/rS0D4n2Vsaf55xVN64vSOZnVuFK7xTnnMija0mLbevrrh64BMJhEJfgoEuTu7I44jw90xRcP9v4ZLaQKCZylJCt8UirKJw7aAKTy+xLx1MEOS+OuZTeKPG+XkYLF9TPk3TZfUTAFNzplTL41pCDa9GI1zP8M/xnrtx7a8ckHChLMRb6YXtVC3rU+0sMpLqNrdDeISrv5DZRt/R8YISd3sSm3KhbTVZKTC4zMT9tYNV9DE2YYIl+6SreoV6JUJL7+OhLhMNaLL05jhJTKMMTsvOwyUmHm9OmT6sP+jtvhFW6TeRLVrAAjPiqvauGDykOuk5E82eSdtAMVv67/IpK2QevTVz8jMk7luU8Tnw2EzuxDU4Kwtk5tZepnQqvtZlfBcIM0hQKbxDeliXsVTvpn+lUGcpj4wA= X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jul 2017 04:54:37.7208 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR0701MB1714 Subject: [dpdk-dev] [PATCH v3 10/34] app/testeventdev: invoke the test ops 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: Tue, 04 Jul 2017 04:54:43 -0000 This patch retrieves the test ops from the given test case name and invokes the registered test ops callbacks in order and print the test result. Signed-off-by: Jerin Jacob Acked-by: Harry van Haaren --- app/test-eventdev/evt_main.c | 136 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 136 insertions(+) diff --git a/app/test-eventdev/evt_main.c b/app/test-eventdev/evt_main.c index c076cdb62..27d0ae683 100644 --- a/app/test-eventdev/evt_main.c +++ b/app/test-eventdev/evt_main.c @@ -38,6 +38,21 @@ #include #include +#include "evt_options.h" +#include "evt_test.h" + +struct evt_options opt; +struct evt_test *test; + + +static inline void +evt_options_dump_all(struct evt_test *test, struct evt_options *opts) +{ + evt_options_dump(opts); + if (test->ops.opt_dump) + test->ops.opt_dump(opts); +} + int main(int argc, char **argv) { @@ -54,5 +69,126 @@ main(int argc, char **argv) if (!evdevs) rte_panic("no eventdev devices found\n"); + /* Populate the default values of the options */ + evt_options_default(&opt); + + /* Parse the command line arguments */ + ret = evt_options_parse(&opt, argc, argv); + if (ret) { + evt_err("parsing on or more user options failed"); + goto error; + } + + /* Get struct evt_test *test from name */ + test = evt_test_get(opt.test_name); + if (test == NULL) { + evt_err("failed to find requested test: %s", opt.test_name); + goto error; + } + + if (test->ops.test_result == NULL) { + evt_err("%s: ops.test_result not found", opt.test_name); + goto error; + } + + /* Verify the command line options */ + if (opt.dev_id >= rte_event_dev_count()) { + evt_err("invalid event device %d", opt.dev_id); + goto error; + } + if (test->ops.opt_check) { + if (test->ops.opt_check(&opt)) { + evt_err("invalid command line argument"); + evt_options_dump_all(test, &opt); + goto error; + } + } + + /* Check the eventdev capability before proceeding */ + if (test->ops.cap_check) { + if (test->ops.cap_check(&opt) == false) { + evt_info("unsupported test: %s", opt.test_name); + evt_options_dump_all(test, &opt); + ret = EVT_TEST_UNSUPPORTED; + goto nocap; + } + } + + /* Dump the options */ + if (opt.verbose_level) + evt_options_dump_all(test, &opt); + + /* Test specific setup */ + if (test->ops.test_setup) { + if (test->ops.test_setup(test, &opt)) { + evt_err("failed to setup test: %s", opt.test_name); + goto error; + + } + } + + /* Test specific mempool setup */ + if (test->ops.mempool_setup) { + if (test->ops.mempool_setup(test, &opt)) { + evt_err("%s: mempool setup failed", opt.test_name); + goto test_destroy; + } + } + + /* Test specific ethdev setup */ + if (test->ops.ethdev_setup) { + if (test->ops.ethdev_setup(test, &opt)) { + evt_err("%s: ethdev setup failed", opt.test_name); + goto mempool_destroy; + } + } + + /* Test specific eventdev setup */ + if (test->ops.eventdev_setup) { + if (test->ops.eventdev_setup(test, &opt)) { + evt_err("%s: eventdev setup failed", opt.test_name); + goto ethdev_destroy; + } + } + + /* Launch lcores */ + if (test->ops.launch_lcores) { + if (test->ops.launch_lcores(test, &opt)) { + evt_err("%s: failed to launch lcores", opt.test_name); + goto eventdev_destroy; + } + } + + rte_eal_mp_wait_lcore(); + + /* Print the test result */ + ret = test->ops.test_result(test, &opt); +nocap: + if (ret == EVT_TEST_SUCCESS) { + printf("Result: "CLGRN"%s"CLNRM"\n", "Success"); + } else if (ret == EVT_TEST_FAILED) { + printf("Result: "CLRED"%s"CLNRM"\n", "Failed"); + return EXIT_FAILURE; + } else if (ret == EVT_TEST_UNSUPPORTED) { + printf("Result: "CLYEL"%s"CLNRM"\n", "Unsupported"); + } + return 0; +eventdev_destroy: + if (test->ops.eventdev_destroy) + test->ops.eventdev_destroy(test, &opt); + +ethdev_destroy: + if (test->ops.ethdev_destroy) + test->ops.ethdev_destroy(test, &opt); + +mempool_destroy: + if (test->ops.mempool_destroy) + test->ops.mempool_destroy(test, &opt); + +test_destroy: + if (test->ops.test_destroy) + test->ops.test_destroy(test, &opt); +error: + return EXIT_FAILURE; } -- 2.13.2