From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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 ; 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 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: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: 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-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 Acked-by: Harry van Haaren --- 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 +#include + +#include +#include +#include +#include +#include + +#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