From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <Jerin.JacobKollanukkaran@cavium.com>
Received: from NAM03-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam03on0051.outbound.protection.outlook.com [104.47.40.51])
 by dpdk.org (Postfix) with ESMTP id D8C2D7CE2
 for <dev@dpdk.org>; Tue,  4 Jul 2017 06:54:49 +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=wMFg6OeMo55epK1Qk4AHi7VO8hKZX4Edu1tSlz2HOik=;
 b=d9YduA0YQHJZ8D0kmmG9rkA3b07l2qM8NuG54zUKacffrMKmgzUsJ3iVEFPDL9EKWhLVfa82X8pHwUmzDyXxs1HOIybKAYosYoH7b3XNfORLwnJQ6CIYnqHoboxop++jK/A3CaiCmNhcQisZskEUPjZrMQXPqehr8qMTXWzspdg=
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:44 +0000
From: Jerin Jacob <jerin.jacob@caviumnetworks.com>
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 <jerin.jacob@caviumnetworks.com>
Date: Tue,  4 Jul 2017 10:23:07 +0530
Message-Id: <20170704045329.24711-13-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: 47a02974-e21b-4dc5-4366-08d4c298cbf9
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:kn9Gs67w8aP9AvEuJNNYjeA9eEmhNdFK5TBA85JQCS3K+100TiamfCT//C1S99ywvDyfk33S9ZF80Di6FecYfsWkPOh086u9hGK4RSChBPAlBVWiNGBk3d2anEjF6v1+PQVRFWQGLNw+/7WQ5rF5U9dA24w6puNtHmk8yPp3d1EiytUfRYk14O/EinUE6jMJMMgscaFElCxZvhqR5fFPw+YJUWJoCXOQg+ZNsFKUjhfbq/BL5Vc9K4QMOn6dDrvZ3O+rHMN9NQJvEboDHYFpTSavGl7UueJK/t2rtY8z7DRW9zrR4fxPyYneLEqHGPDkmPR5isN+E19QDosWgTHEfSrDDwLZrGSnbO2aQW2JlEfLFwaTxsqgtCbSu9BSup5Ma/9iJDl90d2L3jg+9IH/ZOQd3byKacxUmxBQMZEMnY8+hxmkgogIahAlK++X2okKE+dxcrf0q1BJ8CJMCC3f3zSz+L/38H3H7k4sUQ7hvVUP0IydeThLeGmk9EvUO0tPzR0eSGwwW7T96SRcccl8WTzZsbwsw1v1+NcP0r5DoudlVnWTKfdUivSWWbrpIRMFTWkMsWVLiI7TSB+AE5xz1OcVe66XCgdWNgwty7Jt9pcQwM4y1755j9jzpTpVU0vis27S0qRlF/THfMOoQT1n2P6JZxGjX7W58RfbYs9LBtPEIHR8rmIhqtUcLbuN+mpAR6789p06P9WPs0MCoBIuUP4+CtdbimyevceibNsymCKcDUTvXdprldJJCXvTTifj
X-MS-TrafficTypeDiagnostic: BLUPR0701MB1714:
X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714;
 25:0NzcK/ZfJgrJ/tDPsSwlDba2Jge7nsbjLlMrjNbn4wM0RWeZ31bT7sGZGypeYohMlyyN2q2BWuyH2TQ7aDQupjnSjpr0IQOqQZ9wPlv4wv9IIMk35OSStEMUf890fEj2Y4f0ww7UW3mDckFlbCo6DJp+42ibP/amuONmNpegi3M5PABPE/8cNCXsn1vaRda2c4AgqIkro4JYfJmlAbgVZJGLNGlEzEPZa8HPQ8my9kZ889gRz9sMFrSPISog0Oipf9o11qhsoymOzTGxjZpA0cWXKH1XTUs1mZROS5lyFF1R4xfsGSJpY40A610CAZNwAxmUYB2tprSwvV2H0hovd/bZZueHj0eUMEHKGxO7w1/2cmeLTMkaqbnNX7ZNyENpjQPfjCOku12y79YnR9cHTCLyT7nyTzzYq2JyyYC2S72Gmlv/6gpUKMhSKJ06BRivmFiQyC3uFiJbhy5LoMIpR1TnVTh5c7Q/G9ZkBRkmgEbbgl+sPADde3+cUJQXLutiA0V7tPK9AXx1/WAwrEuGLSHkwIS34ORSHRVWQHPCjrt2NtUqSVOnV8kn8AejjABKgqju9rCz3Fylzdf19a/NkiNUFDP1tKVeHizYou0fIAgTH1S5ZrBEzxqDJxqqeNQD3z+iQvZBXR3LM8BmnUb5uGs4DZUwv9dTxl0D7/qr2Pn/E7EZFPCBnC0IRukCJd8EM2gvogAQtLXZdLMIOzJI5gQf2vDH6S6jwl6PBmUFkSi1RAmEPHTEFF4VkJmh5wMa0qqvAOp9dB3nww8dQd5z0BXbkIFMus/aGH8XkHwXghAX65yNFHDEG0Bjv+B+k0dhXDW8QjBhWGH8fAMCMem2fPlztbhz6aR8UowTToP6Jf7aTk64Aaqxfbf8u8TYN6Adj77TnXen9m3lerMqhCFvbj87UsgeuTc/8fQuyeN4BQs=
X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714;
 31:OsXRJUeYCzad8TM0XaXtHekPRSDmYmDbumqmEUGpdNPOa80BnJCj4expxmlz7GVEEYKavj2kjRA8rSLs7d5/VrsPOoQ3DqUK/e2ob3D5lHJCIurFdpPxgjnacFnGnpc3wNdQswSzd3viFqO35OCBjnYvr0R4EGCyzNx2A3N/Y3Qnvp4Er5CEraQ9AzYz9e6Ee5ykfKU1rqavdrmya6BwVB79P234Jr9bEj0+qRCPZlc1Gd+edQiRpkyclJRAisFq9FfbSSGDsPzlMqhS1FIp0EcTaKKKSibTg1n3jiM4Jc1mNt7nm4tHyZUrWBW2HwiVS4eOhWLyTyBsLs8l0nXwLWo3LfyzYWALXnAqn6bPiqMjl2cSDr9jKN+VK+X6oB70fjp6FgDOunfWqG2QPfalnkfSBos9g24pA0uTKzb71FATUIcupXHkXfwaxT3A1TPc5Id/qcCkiw7dy1fCKGtXEqmlVic4BPPbVfVMd3buqpHmUlvWoO1XPHFxnSRJghVI+qSS9FNnvY+WDpWwm3grf32r+I14e23S4a0aGGGtTllTTb5sOy7HsQX9JllI9sewrvZcarV1Ylodw3lbEDH0xU8HssMFDDylQEzDn4jGIgdpDthx5V1AhwlQnwRjdA2nO0sFKgFTV7EznrfhsSLbR1RoZqpB64vZqVyfmOYcrsg=
X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714;
 20:uNGeWUm9S4aieIJETbIQbqgNdOdNbNpjs6e1p0cksj7qCUZFZyCWV+lvhH1RDTbkVQgWf82DZoLruc+QOo7QT7/jJILfYWZ071Qu5gkJmCCEqRLsfKZZcCpDHG7bXVVp9xw1ye5TKpd4lV6ptRVnAK5zk8H35ugWBJtmqHWqaBv6/bnxY+ldI6PpPAdekhXwZK0we577y0TLuOjhoqU2Hv4MaJ9e5m/pd9VVcuToMUy3GwlpslhT7KlCcm6+cvq+BXj1qcmVYXx6VUfHyqx9KmJq7tC8+R13gcBNE4Jkxb8wVJBaHbT3CkHu/r1YIdN36ylrpXXYiugPmQWcAjBSDgNozLXLvFe+7vZKEgbicZEIMbSWRKOz0Hg0rsc5xu4xlGXRv0s7qhexkUBHI72KXfILEpkmWQkVedLLD4H58IsSHUT6KkgJjqcTS1vf3j80dXSz2nw2yVVb0+LCnEUVaztzfNWALis+5y5m/p9ddwKioLbQ26j5mknCrPH3hO5xlWr9MwNGtudzvsgqNe8xKC8dghLzg3CpKyx8rCw4gJjOfaWuGGzRSel4YiwbKDK/Byh6YwzXa4ghTOd2PCt+UtyK5ejeEEScKdSOKBZ+7mU=
X-Microsoft-Antispam-PRVS: <BLUPR0701MB1714999AA67A6163221A0FC6E3D70@BLUPR0701MB1714.namprd07.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(236129657087228)(148574349560750)(158140799945019)(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:E4AfnXZWyWbyXeAuIsMx0Uq9rWay+sy2DNIfJ+D7?=
 =?us-ascii?Q?2PmJjrTi+AGyG2x1QFcw4pbDMjZziuaA54Cv1u1QrYVLavZ2zCAajRRNoVYl?=
 =?us-ascii?Q?4RDubtYTkPpB2ETx/t/CHfdkSoUZ8GvhBZZIAVo6g7+xTKz/YPKvc2tANOTx?=
 =?us-ascii?Q?zcGs9N8WahhU34aSEBJ5GDe9oQkGgKzVVRKdnTKBlidRIVjAb+mIVMCXKMWn?=
 =?us-ascii?Q?GVnpmhTurjwhUi4v5IoyhvNyeDwkViaI7BCFaVXB/xQyoTRjV4K7Mh+Bm5Ji?=
 =?us-ascii?Q?dLKvvLhl7/UnT1kbz3DvNLvHm5RfOAxG5Qte0SWGm0i8N/ZAE7+azURx0yEz?=
 =?us-ascii?Q?I0KNI7f2/BihZ7PAtQ6huq11Ypfyk58GSkaBGq1LFpXaD23XP9vacLwe/+qd?=
 =?us-ascii?Q?CvqHqbeKq7KHV0z5nz9g6krLTOMLJrYsHI21ME6dbw8dF9W9k7ohY0V/RbaD?=
 =?us-ascii?Q?GW/DbZ6V5TT5eBG7Uevtx2mDcmEyUfQ3dc8QgZm1vV+ehRbGRpmbVTV7o6Ax?=
 =?us-ascii?Q?Fg6kdXKmQDL9RpzOg/EApcj0tt6i3eOSb0mRmj5/ijs+Jj99/XANACsTAQVq?=
 =?us-ascii?Q?ZAxRo2BFn3SfEcUSzAjjQq5l98Z+iw0rAZ/ObVU5PpqsEhOuCe3TkAZ6QNc+?=
 =?us-ascii?Q?gLRDwqZ9X5NVCqDLfbbOpqWWyIq8zRx3LTfi/bwQJ4rkNG9d00F2zsDiV+56?=
 =?us-ascii?Q?zh9ZW8yxkq3ixIfEtfnBCfoSaxEw5YoLstUqxdt2oTvxqpsBFueUUk8CzW4J?=
 =?us-ascii?Q?HgdN5/pH9x+6VgT9C9BNTSx5X2qIXacPrhfKuXHGZy01LSneSF3ioolGjTei?=
 =?us-ascii?Q?dw794k4XaeTlcCcka3bzwaQJQk1VJYUyYMLevpX30gUaN1zxXU8b0Y6SSq03?=
 =?us-ascii?Q?hKafGml9nlOk0kiOhpoukNEZWamK5vSY4rP4qIb5KuXjqPR6bw8I1sLgZmKC?=
 =?us-ascii?Q?sy6W2BMZQBeJ9iz0eYeGxbgxE+JWKtvh7MlcHUwIk68zQPtWqVKSvJN2HjZG?=
 =?us-ascii?Q?Td8DaWj2EbANZkAvL/evGyr89Gi6vLXRFz15FW8NQ213193bLXE6O2L+4U6N?=
 =?us-ascii?Q?OFfZsX3I9EsezH7g/pO+6fv5I9eMWS7zxenhBQ1FH+oxqwQpJ090xwag4Tow?=
 =?us-ascii?Q?0YJCmJ5zBRxMKbpHnDSaCxyNhXNTQR15f3LYp6c4pQ5me3StmJdROT1GuRnj?=
 =?us-ascii?Q?9Xwh+PHbIAegfUdmFa7M1xvW/mlYULQaSlnEaR5urUYj1I28ZBWoYienxQtW?=
 =?us-ascii?Q?QxdF/GSS5cSE8YfP+oDk9TFTkssNKM1wqlGuBMN/?=
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:5+buIGYE+eqEiGUbT7ffYSySPgsNyANorMQatZX?=
 =?us-ascii?Q?h6Yel3xliPoqnQKyficfu0bsHe2WdgEIDyhuvdRNYPFohGEE5HLdypx74wD3?=
 =?us-ascii?Q?kPMdfPqBQ5sETm5OYDJrp1pIjSdtBBzN1uXjapJYdCnLiSa1/qFrdvpTozMm?=
 =?us-ascii?Q?jvUQBe++Np0bUn4d9yEtekoDX2kjSgImWsEQEMVkrLegaC24ClHDKzLA3Ogb?=
 =?us-ascii?Q?ggr52+kOnRfUAUQVa3YWxZyzpsno8bo1opVKQbbYEvZW8IcfH7tpO0InRIhF?=
 =?us-ascii?Q?9HQoNjP8+iTZMU1kgD74VqWrdMTKU+jCW/LsxEDptnSFQCE47T5oM1s+sfiE?=
 =?us-ascii?Q?jVK/hK4BJTp+76vh+zvqesFWAasqhPz6oOHVgx753L74S41y9tz+gub8sTAB?=
 =?us-ascii?Q?J0bQQSaJ9YFyfSCxcfCDrERum//n5W+aMXsnXrorGAuytNmuTn5uzjs2OOqM?=
 =?us-ascii?Q?FAQjKfjHt/TyxRnV0VBYwY3OQ7+norVZdHojneDvK+XT9xpupnzPdVtbDTV9?=
 =?us-ascii?Q?zj9zicyVXpkW4yfyXnY8OgEaCdIhmCtXKK8CtLzUJ8DNQes98x+CbJkTNKzC?=
 =?us-ascii?Q?Jwh/wUARyqGerwp2c8nAUO6nvbZkVoAZYowCFMChBdLWwf0mKHF2J8PRhhoX?=
 =?us-ascii?Q?wCLkWDb0XPgCpWRLD7M+7U6XQQ5BswniO6wD8g/GKSp8mMau1KTpZ1zxw2EE?=
 =?us-ascii?Q?gK9E65LHL+sE5ddkFrcpQl8cA/PBG7COseEyDTm/s3KbPztYunYHhaubCGBb?=
 =?us-ascii?Q?Ym7BASxnv+75ArDJYzLAGWLpQTk/H14AKZMfaKJ04/fjqJ3+ixQLHyAygU8I?=
 =?us-ascii?Q?lbjOIgtQPXzmz+7yH2CwZ/eaHXnB5Pn+lRhPHttzWnUyf7PnN2UhtDmxNqTL?=
 =?us-ascii?Q?hVJDhqyBzKg6cr9Cal9VOkc8yw4TmhTcDittxEGCofinFi3rKs23rsq8UXC0?=
 =?us-ascii?Q?Oalpxeh5m/NH1X1u2f7c5aE++I+0I4wwM2ILaYmIpwSpYh9vFSIO4S6VP8ry?=
 =?us-ascii?Q?s/zYIGQLAjuy23lu5a4j4K2/wXJkoH00839yqozQA0aDqpooIC7WuuWo43mp?=
 =?us-ascii?Q?UdgQB2pG9MkaMPh3+K/KlkMGXI2O4F804kIm6IZLH4rH1zXpdBMQXZykPxJk?=
 =?us-ascii?Q?wNKzWMjOwpoI94blikkHCd2Y/xSoKCUdoXnDUgJuAJ0Wl9j8VmIhBY2F6Beu?=
 =?us-ascii?Q?xKvQMPskgl5I4bOyg4985oUp/ha0mlDiaPD46lONSwRqI/LP6/e+PkpHTJA?=
 =?us-ascii?Q?=3D=3D?=
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0701MB1714;
 6:39+QBSlHwut2feDKL/igAuXShb8ZlffKuZ1cfWnZ?=
 =?us-ascii?Q?MnjQWAsF4o+uae7e0HkbcwKpwT8rRIXdP69rT3pJzOnDTWu9cRfFAkrVxijc?=
 =?us-ascii?Q?5JaHenp2OdRuh2X0/K8VW9OuKEbwLXlVIaeSkt4obl2XnourSHjFsp41O8nN?=
 =?us-ascii?Q?zkcsPohdyxxlqCH951FB+B/ZqMVmqhTa+4S1izKXYd+/XvHBCsGvi+KT0CbV?=
 =?us-ascii?Q?noPpNNsLVcv72tqc45pGxjETb4g9czlPEaQsenJqw3sqzvdciOBhzngxkXQm?=
 =?us-ascii?Q?NMXzWWphfDClqN5lwz28sp52LHBasycnTKIP1vzRhdlX8oyzkHigw2J/w5oB?=
 =?us-ascii?Q?Iw5k60H+S9WjYldAYN1X3ZUV/njOLCNdTch2LH5ocVO49KOFNuej51HnCykr?=
 =?us-ascii?Q?We9puQh6OqI91NYLaqqY+N3A67++TRbxBdaZxg3xDsOzvch4YX6/Nor8NlR7?=
 =?us-ascii?Q?pIXsAI/zZQKNlfCjkavRcFDtARXNHpCi6x7y4YsZ+UxSA3oPWvQ/LGRYhxDY?=
 =?us-ascii?Q?2ah8PnEc8f9SvnflFlyy2nYs86Htjct9oVWUeRN+iIGbCepyG9HwzxyicEDd?=
 =?us-ascii?Q?+Z/Hic9BFq3priyvXK+0ktlJWZbTNt68kfxQEZGLy1I41eWBNFe33+pdRIGQ?=
 =?us-ascii?Q?ZdMkjtnGOhkmKvyp8kwB8RfrPSA7lnvTZKueDikUin7/uOQauyXVj9Mu4SB1?=
 =?us-ascii?Q?xs186N4aF3nBHaZi2CtJOThrSTROQNRHrMWmKY2xYXhu8EjorS2JGvHY1Jye?=
 =?us-ascii?Q?kIKE+N1ty4G9eqt5MhmstNqywBQg5xk1fiba0JWzxsHxwI36TAecZUDnuN7q?=
 =?us-ascii?Q?XRESyKUG73IPNxg7MX034PfbvikpFbnuVAMGV9Eev2qgxIl4ek4mouj942Di?=
 =?us-ascii?Q?xIOcJoKx5j0zCAGlxbWTZ+p30jduG9yjnCOIrG2JXwDO8Jtq2BRCbZPxgSWp?=
 =?us-ascii?Q?It5824q9PbCrBpMkdOaD/jewZrsDB0r+AkuTbh+vHdLyBjxIvpwF2Ozf1eBC?=
 =?us-ascii?Q?p8U=3D?=
X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714;
 5:JI7q6fP9qRltlGPtTvV9ytTGPMPHoYc9G/cagTunv08LzBsu3WIBkeOielRH7lpO1kFRZXSGrnsRGgzZqFjHEp0YOKruokRj1yixff1yc9nQVTv6Imch0sQLZ1vH8ST+gL9bqTGIHHW0iaNr+LFGLDHNQh0dAu6gg3oZVocqqce5uJt1GsQDQPI/Cpv++PBrIs3Z1InQJKK2aCeivmvJKoE95MuLIiEmJE+Sx5f6qH5YfeB0MzzLf49O9NHJpB38eB2JDHFIfTGd3MMcBrJCr0mEwF8spaWwBGHuEhvyHHQd/kNthLpUsYMFL7+4WvrkzS5b0HeC3HmbUa7c7q92HZ6ITEazuYJDSwh9/KDNAUfi0A6LC1TuLgDEVQ1QfmQll2FBFuvHGKBh8+ZHhJEjmSrsK9oFX9cvckc4aLQHvctGMdsGIrUvzAwIOqn1REGBi9B62aDnp/fYdq9moRhZXe75XEj3Zit8Atlz/MSx+Gi5QddIfRXOcYPV/uC3QPqF;
 24:dw1tYdtt8K6chA3G8YETExwVycvqNInKqyGlauMY/Mrb44m7gHnt511x4QiCoN2sZBE7ftUuNtQhz5K4mqUv0hfdSeUCIMLg8S23ICQ/XoI=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714;
 7:TPAfKmBA+E9o3gadnvLfc8j2SHrjIuhlhg/ka1zEVubE+pPXfEkwOt/TFaBQuC5dwKl9EqOOsLFdKNzi1KewyzhQK2aR3fUgoifUAtfb0kIjuZvK4sBf5wdALlrOJQNg5a3cpAR1n9sX+xHsFkYs/tHmuty+YMYHvqJRs0iNx6xJJCGlRiGXFSIDLb7aVGHAOkVDoUbrcvxi7pPfDPrUv4lcZT3yqKn9+L8DNVwHYRyOd/lOhrJldTMw5jyI1SF/+I7gj7Q+wpg/GSrVXvRXA3CwyPk0Zx4hRMLhmpx5cgGvuWQFxOljV0NKX1kuYUl3wjw0K2TZVVzgWvUrw8ol//3k0xoii31DPKAkLcEJgUBzIjWqcr2bOJf3QQr1y8UocDpomWlXiwR47P7ovhRsU8TmCaIN7Z7IVoprhUP2tdHpAJ4fiIb+kw8cX2pr6FusGg1SpxkNC8rEF94vif4aE0d4nkObb9wSJbgdm/mbdbE2CqzatsI4wqU1em3da65v+FPjM0Bv7dxSGkjbK7KWCCJVZggS/U98RO7b45rpuCnTc36VMpoPIXMm45kr1DjTS3TLR/BSti8UK6uezCaWPts6mq7V/bV5V6u5Nh1jjJ6Jeb4w01uZpWV7huBLzxyOYlulpS+PSgnx1Whd3OPjzGUr4ggKdyZtGykvicAQ8Zd2ibJhwdQgT9eSBsYKl0DrWoclVesOPC1ffVYcPZNbgEZmVkm8fOdbDxES1sfovujdcdrlaRGw1leC1bsxPaPRfJ3ZPHPcm7ToM3Mt3MonsbyEAr2BQT7lcwIyD2DDt2M=
X-OriginatorOrg: caviumnetworks.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jul 2017 04:54:44.7592 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR0701MB1714
Subject: [dpdk-dev] [PATCH v3 12/34] app/testeventdev: order: add test setup
	and destroy
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: Tue, 04 Jul 2017 04:54:50 -0000

order test has the queue and all types queue variants.Introduce
test_order_common* to share the common code between those tests.

Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
---
 app/test-eventdev/Makefile            |  2 +
 app/test-eventdev/test_order_common.c | 92 +++++++++++++++++++++++++++++++++++
 app/test-eventdev/test_order_common.h | 90 ++++++++++++++++++++++++++++++++++
 3 files changed, 184 insertions(+)
 create mode 100644 app/test-eventdev/test_order_common.c
 create mode 100644 app/test-eventdev/test_order_common.h

diff --git a/app/test-eventdev/Makefile b/app/test-eventdev/Makefile
index 168e56416..acbf74ca6 100644
--- a/app/test-eventdev/Makefile
+++ b/app/test-eventdev/Makefile
@@ -43,4 +43,6 @@ SRCS-y += evt_options.c
 SRCS-y += evt_test.c
 SRCS-y += parser.c
 
+SRCS-y += test_order_common.c
+
 include $(RTE_SDK)/mk/rte.app.mk
diff --git a/app/test-eventdev/test_order_common.c b/app/test-eventdev/test_order_common.c
new file mode 100644
index 000000000..b8ba8a0d1
--- /dev/null
+++ b/app/test-eventdev/test_order_common.c
@@ -0,0 +1,92 @@
+/*
+ *   BSD LICENSE
+ *
+ *   Copyright (C) Cavium 2017.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of Cavium networks nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "test_order_common.h"
+
+int
+order_test_setup(struct evt_test *test, struct evt_options *opt)
+{
+	void *test_order;
+
+	test_order = rte_zmalloc_socket(test->name, sizeof(struct test_order),
+				RTE_CACHE_LINE_SIZE, opt->socket_id);
+	if (test_order  == NULL) {
+		evt_err("failed to allocate test_order memory");
+		goto nomem;
+	}
+	test->test_priv = test_order;
+
+	struct test_order *t = evt_test_priv(test);
+
+	t->producer_flow_seq = rte_zmalloc_socket("test_producer_flow_seq",
+				 sizeof(*t->producer_flow_seq) * opt->nb_flows,
+				RTE_CACHE_LINE_SIZE, opt->socket_id);
+
+	if (t->producer_flow_seq  == NULL) {
+		evt_err("failed to allocate t->producer_flow_seq memory");
+		goto prod_nomem;
+	}
+
+	t->expected_flow_seq = rte_zmalloc_socket("test_expected_flow_seq",
+				 sizeof(*t->expected_flow_seq) * opt->nb_flows,
+				RTE_CACHE_LINE_SIZE, opt->socket_id);
+
+	if (t->expected_flow_seq  == NULL) {
+		evt_err("failed to allocate t->expected_flow_seq memory");
+		goto exp_nomem;
+	}
+	rte_atomic64_set(&t->outstand_pkts, opt->nb_pkts);
+	t->err = false;
+	t->nb_pkts = opt->nb_pkts;
+	t->nb_flows = opt->nb_flows;
+	t->result = EVT_TEST_FAILED;
+	t->opt = opt;
+	return 0;
+
+exp_nomem:
+	rte_free(t->producer_flow_seq);
+prod_nomem:
+	rte_free(test->test_priv);
+nomem:
+	return -ENOMEM;
+}
+
+void
+order_test_destroy(struct evt_test *test, struct evt_options *opt)
+{
+	RTE_SET_USED(opt);
+	struct test_order *t = evt_test_priv(test);
+
+	rte_free(t->expected_flow_seq);
+	rte_free(t->producer_flow_seq);
+	rte_free(test->test_priv);
+}
diff --git a/app/test-eventdev/test_order_common.h b/app/test-eventdev/test_order_common.h
new file mode 100644
index 000000000..a9dfb647a
--- /dev/null
+++ b/app/test-eventdev/test_order_common.h
@@ -0,0 +1,90 @@
+/*
+ *   BSD LICENSE
+ *
+ *   Copyright (C) Cavium 2017.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of Cavium networks nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _TEST_ORDER_COMMON_
+#define _TEST_ORDER_COMMON_
+
+#include <stdio.h>
+#include <stdbool.h>
+
+#include <rte_cycles.h>
+#include <rte_eventdev.h>
+#include <rte_lcore.h>
+#include <rte_malloc.h>
+#include <rte_mbuf.h>
+
+#include "evt_common.h"
+#include "evt_options.h"
+#include "evt_test.h"
+
+#define BURST_SIZE 16
+
+struct test_order;
+
+struct worker_data {
+	uint8_t dev_id;
+	uint8_t port_id;
+	struct test_order *t;
+};
+
+struct prod_data {
+	uint8_t dev_id;
+	uint8_t port_id;
+	uint8_t queue_id;
+	struct test_order *t;
+};
+
+struct test_order {
+	/* Don't change the offset of "err". Signal handler use this memory
+	 * to terminate all lcores work.
+	 */
+	int err;
+	/*
+	 * The atomic_* is an expensive operation,Since it is a functional test,
+	 * We are using the atomic_ operation to reduce the code complexity.
+	 */
+	rte_atomic64_t outstand_pkts;
+	enum evt_test_result result;
+	uint32_t nb_flows;
+	uint64_t nb_pkts;
+	struct rte_mempool *pool;
+	struct prod_data prod;
+	struct worker_data worker[EVT_MAX_PORTS];
+	uint32_t *producer_flow_seq;
+	uint32_t *expected_flow_seq;
+	struct evt_options *opt;
+} __rte_cache_aligned;
+
+int order_test_setup(struct evt_test *test, struct evt_options *opt);
+void order_test_destroy(struct evt_test *test, struct evt_options *opt);
+
+#endif /* _TEST_ORDER_COMMON_ */
-- 
2.13.2