From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0068.outbound.protection.outlook.com [104.47.34.68]) by dpdk.org (Postfix) with ESMTP id 0156C271 for ; Tue, 4 Jul 2017 10:22:56 +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=hjzuiH49tT/5czLiZmufWxG9oGTKWQbnEGSbwo1gxK0=; b=AHNj3nzlQOak3EQku2gQTrm4jHKxOIs+Zf9ac2nemd+5LgEtNG0Z3PDHJt7xNSy5rN8WvcHXSMmncy4Qd3YfYPprMKEalzhE43Q54dyM3dOzJGR6D7UB0euq3Hl39y7RWOdyqbx6IlTvt46z257uMaBN42fFEyEkdZ4jUewHhoc= Authentication-Results: caviumnetworks.com; dkim=none (message not signed) header.d=none;caviumnetworks.com; dmarc=none action=none header.from=caviumnetworks.com; Received: from 1scrb-1.caveonetworks.com (50.233.148.156) by CY4PR07MB3063.namprd07.prod.outlook.com (10.172.116.144) 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 08:22:53 +0000 From: Ashwin Sekhar T K To: jerin.jacob@caviumnetworks.com, john.mcnamara@intel.com, jianbo.liu@linaro.org, tim.odriscoll@intel.com Cc: dev@dpdk.org, Ashwin Sekhar T K Date: Tue, 4 Jul 2017 01:22:40 -0700 Message-Id: <20170704082241.29217-2-ashwin.sekhar@caviumnetworks.com> X-Mailer: git-send-email 2.12.2 In-Reply-To: <20170704082241.29217-1-ashwin.sekhar@caviumnetworks.com> References: <20170517181949.12002-1-ashwin.sekhar@caviumnetworks.com> <20170704082241.29217-1-ashwin.sekhar@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [50.233.148.156] X-ClientProxiedBy: BN6PR13CA0044.namprd13.prod.outlook.com (10.171.172.30) To CY4PR07MB3063.namprd07.prod.outlook.com (10.172.116.144) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6d955e15-3447-42b4-5238-08d4c2b5de61 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:CY4PR07MB3063; X-Microsoft-Exchange-Diagnostics: 1; CY4PR07MB3063; 3:gjSY38pEVBvJncqZ6jJcJevUaYfKehviA45lvGvT+Qz5yTrVJpzD9sM9jL8CH6rwgPLhDGa86qoNA3AUyLkvpvmDKTDQBBzQKAlXdur4L1QLOjyMz+w5GQ8J1eB//ntbbORNIh5CwQca86xfy8VlScivO/iUry4K8vTujL7kXczsYog+v0jitJTcpUf3L/1r6bs5uh/fBL2Meu/GcZ6nDvbpudV9q2bAZPxd9AItjj38DPn7+dOy0Km1rrYz9RrgaxnMDU2mcVerO8GCg1XpBJyRU0kh5YNjlot1jq4o7iD4Cm8YUwVafzmQfIKxJTiuiwliKrsbirLGRBRo3n2tToiH3YpQ9xMn8YvE327YwVgR/KaizQ2F74jrHcVVMb9sd/DEd0s4hSkrkbPWTe2oMllCDHSAIJX7R5YT1rvF3Akkges2scltXb6qzr2i/aG9Kxlgnugkga9GnYnKBkBvuRe6vOdniDk1FNHwIWe3Bbyx4ePRSJ17XH0s1trffH6I7R/IWXYrgvnT5Gzv2WQ+eFT9klPFK1sW6J509RyNbDyd+M/4KO2lrC8Y5bl0ZGtRKHx8iNhkYNeuBfLuz8kCDly6YbL73rHws01+e6z4mTeuI1PxuWsubirywRQdmVURlGrVP5FvTHqYOYru9ysVj3kVvlWwXVfEBxz0jR+tFMsBisS/Jrw5gtquEjxukGl1LWc0zSyPLIjOoaV+WCz1Zg+ZXXceeYO3a/BeR09HGyxsRSlpJ3Bb+0GQXm/r90Jv X-MS-TrafficTypeDiagnostic: CY4PR07MB3063: X-Microsoft-Exchange-Diagnostics: 1; CY4PR07MB3063; 25:1E63SW970rV2mHCWsM4gMV9KWn+05/mzYTSvEVrY/F75iArPdr7sXdfAo7ptoU0e604AMix4Qjv6a7nThHra+26r5/zMCxaHPzyzspHnGqwPRbrzPUeoFxDbI6uMEwHZbWlNGYBlCpbqnCRifFlK3LGoJdalC2Gt63yTH0lWGZ5ZEj4wYikzpjUTpsE3EUlsyAoy/EKrcv6xnTTHuEEm/yvUnf9Q5C2InaxVXliFy2zpCIm24PNiOljtegIcDWsxTgSLbpzntg2SorBfj3noCVffxlzLkcAhOkla98sshs+gi9hgwjMQICBmyY8O3NFM0GB3dk8Wx8Xx6yVcvbce68g5z3R7bjtSeuJjJuDRPr/vMfXAOtAijSof+KA5IOC7B4j0sOsFq9Q2Fmtwt/fpNcx2qmKG3AZuOiQyVdvnhIG9IhA4cC26tVzSBqP0yivxE7viJtYZwbTypj6mu7oa3pxviYbCIH8AGo1dQsLYIH1UgpBfclnDj/cf962DKldvq7LJY6fKPqNbYtz0HNTrXXxTqW7F6+ZUfKk5+wayKKLroRJcc+0XFStq3jNyg95x/SiBV2s8u7hqISjuguhvnpYyREkAMabxof4xuEbPCqlIZWCO5kEzR8CgkGXke/bSEqZyhxxDitNHVhaBSm0Y1zmqizKDG1rkAq0hFMTJ5YZMhNIN0KWeKD4b5mJ+LVrmkv5b+pnRdghg5uZXzFXRGBLMBOCMMgb97Kuk6BgPb2D3PTwQnW17NYtGKGuhEsJ0UkjMmVKTX3H0RpNnT5zm9sKrVMa5Tfra3pOPfZhe2d2jnp68vUEqh5usznRGS83Ux7Cs1eHYyJ3e0EsqsoJkQvKYwV4rkaAk4bNhVEvK79gG09fuqGVDc0m10/FNRcFjkt7FzS2vo842c+bkRHOq2L5Yb/+4Eeau+oaPKCe5tls= X-Microsoft-Exchange-Diagnostics: 1; CY4PR07MB3063; 31:pHYVl9+UC1CfQxraYUhfKB5ikPcLojb3f1kjF89u9RKgp2nehA08S9x6vgkYmatiS7eHVzmKSCfWqj/KZoE98dXYN03+Mwl5lZclo3QEi8t6/n1kxovg81IB5U8FxuNK+XacbjyFnUoLNk/56jE4MjtLPy6DzgyOPI+3bc5m7hf66ywAPNpa64fsjwbZyoZ5H5Gx9ZTpscErErJ6zqiWk7xjx95RMHN880uup+Uj7XMspkTGUSYRIS9eHXJsKyZkYN6T6FlnrE8CYSWXbjt2wUHccD3da6aKEpVeE2H58I7dDcE+7KeJE02vLuk1Y5o/aDc7GbfNYkC+tkrWA/zF3o8iYG1OIj7ziUnK/nUm0IfzQ779XVoB4zmDvDMmZL5F2/7crC9Em8PPPuP2/RoHLL/MaMbjfVviJ/aYx+eAlWZ8ZyAbuUQwJ3JeGC6hfbHCPtctdnMwvkOtOU/gung61MkkJN4vGWKDguebAYtP6e4Ydw0h6SHckBKAyCHKOG2eQJRG/VLhoI+rBixSzN6qg0mVIO3e8YV4sVSux6cfOGA9qEnxpEQ0WL4VwP+3ARZnhNzxK1+1K1v4YLrM4BvYvK6YcIrGMOfj/utNRTgY/k4u1l0DQGGQ5ICCVQAJLEe3x0ZDFyF2WvhOW950Rs1l7aIys+G21+Mk9KfVuwuilMw= X-Microsoft-Exchange-Diagnostics: 1; CY4PR07MB3063; 20:8DMFhqaUJCMeoT4zzSc53Otv8atlZ9aI+C2JpMEA64fgZoe+6EZQYHRBRD8GvSAHUIIKWM15wWubN3rFy5fQ8CNyzQL1if/5/9TKhh9wW0Sl6LJYYyeMr3JL3EYCR+AAb8x+NClQoItovmZT5lxnYEIR8xGvTwoMXZtCdCccN3SG+TJ6Lz74+p3orWYT71LNM4rVfo7pKlaUV7OU1riibTQD3be44wZIdIJ6xPtOcfdDEkWsK99UUJDQYc6EJnf6HktoR3VXqpSnD+Vm9rvuOb4hgGOkhCEg7Yf1S86w2n5pNYY6H4wTn3so4s7XSoD5FaKtVeEOvLkbQ/Y7Ctq/n9w5m+Qntb1fJe/RF30lPWWf41ZwChnr8bZZkuPF0y9ebiaTrIywAee1EJfYd9T9E0AB2SCx6J8BRU+AJbXUAvQAdKQprlRsf7gdMyRZ2gteiQxqhESLUcD/FvWpEJlAOIKeJqjNjiATFGKIe60n/1DULFi1Me7D3OrDaq+G5O2xi5HPcWhBOI2Xk4PW0SMlYl7SKT16fk0N844CXDp7CFfeUufYPKH7Nm0Et7uwctMuLKssIPxSD+w1lQOPguhtvLktVwJAvu0Eqv2rTC5ak78= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(166708455590820)(236129657087228)(148574349560750)(158140799945019); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(93006095)(10201501046)(100000703101)(100105400095)(6041248)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123558100)(20161123555025)(20161123564025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:CY4PR07MB3063; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:CY4PR07MB3063; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY4PR07MB3063; 4:UJdq3D9uwzoz1k+Iz0+iQLhcLl80ue4WnqgWXh84/5?= =?us-ascii?Q?yPzcvAWDFJUTVPheP4ld88Ji2ziiS1Xhj+BqUXdwzbAR6xKHAglII18mpMjs?= =?us-ascii?Q?WofGJnaBNKhle/h8T2vlOBm5bXzy825B/aRxOOWC+rgf9f53mNAHsMCYyNNP?= =?us-ascii?Q?hofFY51HHaZcWtLyE/trQ85xLQ36UlGKKBOjr0szWJ8bH4rJwvU/yyShpYQt?= =?us-ascii?Q?bphbjpiAbOfRfHNQSRSNNet8IC2rera7HmzLw7uUGLjF0zOU087uNuos07jE?= =?us-ascii?Q?uGn7IVlLIx+8zxRZoJYl92MW1/zFHN365U6K2cH8elr8UF0e8r6GGCCeAUov?= =?us-ascii?Q?xA6FW4Fvx1j94oop7wQ4iM3n4ktuVBDPL9d3azZ599lTP05dCn8cnOF/MrVe?= =?us-ascii?Q?o1TmFxWD89k8EZmqcmKsxLYC/F1sSVx9aDHpOVV8rQuKThvcuLJ/tjedIX+0?= =?us-ascii?Q?Fy1XaD5Y9RDp9W9jTptWJay1xr/iIJYHRbp/w53NIhM4TmfJPsbou/gD+F/R?= =?us-ascii?Q?cU9pmqMyKL1kC9VDeoayww0SFO7ab6rVGQTHWpvpplZBSmeTPn1Ob2iHuAbL?= =?us-ascii?Q?YTpowtwV2qMDud2gtlZfIA6r5a2/kp8cRlgqFdHakjA7PpP2+95oJDnhUXL9?= =?us-ascii?Q?iHgaGFW2cKFFGQpooDblofe107UxNjyR/qlCpwYsennO36TdP6tWnLS83qaI?= =?us-ascii?Q?2AaE+Zcw0/7Kc005CS1uk7twmGlFelX4wiLyBGxy5onR5W4/IWAUx7gGXRZT?= =?us-ascii?Q?nu6HxLqIi9fbbJ6yK1gSTEdch+NfaV0UJFgJ7xdZ2836wkpbCUdfdjYVajgP?= =?us-ascii?Q?VAqZGyeCcmMjphSG3/zJJqIMi3Ce21Cd/OkP4bJoFuDgItBNBinXfyzi7RPi?= =?us-ascii?Q?6pG+57frQBowAXpQVMAvQEnTpCiZ+fIWXTCqQKhT7mkgFzzuxFQWOrXTu65y?= =?us-ascii?Q?1Lo3JQTpwpWRV3miAljxb481i1anHTo1z0LN/QhZLedGBsLw2yPtKO4AOJO7?= =?us-ascii?Q?sDuyRVzfaBHhE64NKbUYI1eGZghRPSao+d+quTHQAFqap6Brw2PVSJlNsOLo?= =?us-ascii?Q?2O7xMSLE9C/NZz06c/59cw4T6c5FxPIb1CjonGiL3LIvlu2vBEmQE1zoNYXx?= =?us-ascii?Q?t7uFPUQ7HmBxbNwoVDdZF46cJfCR9c0Kbzg5GQ5p7CLjUtF23QTALMTQ6gY2?= =?us-ascii?Q?j1HmEAisUPmVHb7moAUkD2AhlnRKu3xn/J3pigNj5xg/tnlvJyi7KZibDU+Y?= =?us-ascii?Q?m9AAwY/RSVFTMfCmEZhjVG6cYsMwMBPptAPQKo?= X-Forefront-PRVS: 0358535363 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39400400002)(39450400003)(39410400002)(39850400002)(39840400002)(50466002)(2906002)(53936002)(8676002)(81166006)(25786009)(107886003)(36756003)(4326008)(110136004)(38730400002)(7736002)(1076002)(305945005)(42882006)(5003940100001)(6666003)(2950100002)(50226002)(6506006)(3846002)(76176999)(50986999)(42186005)(478600001)(53416004)(33646002)(966005)(72206003)(47776003)(6512007)(6306002)(6486002)(189998001)(66066001)(5660300001)(6116002); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR07MB3063; H:1scrb-1.caveonetworks.com; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY4PR07MB3063; 23:qTel+BFC82Xz0Dt8WmImvtB7NueX+WgLkrGiKmScp?= =?us-ascii?Q?i9RvMFpz10p7NOuKlX+yAhbpMMf9seuL0Wphf6xV9H7ZPHtGQaAKPmxhjjW3?= =?us-ascii?Q?dnbTtxim54UOY34RdIjLxZn3xahhIjUmF7Appl5vZ3NA7ykONoRfMLTYJthi?= =?us-ascii?Q?9XmPtdA2W2HxTPxP2ShmMBrmwAOUpd5euRGaFYi6g6BV5CnMwXkIv4NOaM4I?= =?us-ascii?Q?PvefPXjjQ1tMzzEGPuhE+0i0FLSsub69I8YiCnSb+osTVj09/t4u+bWh2WxV?= =?us-ascii?Q?XzYvMxOysgHfb6xv2a0JjsYcfJDwGmhOSHVKt4FvQxBkgUf0k8ZW9mzRMHXJ?= =?us-ascii?Q?/9wQz1GYIe68t3zFa3QIFvrU1oO9sHRrn037Rx9zbYJRTHFHfSkHn2ZkPQg+?= =?us-ascii?Q?INfy5hDvDmlYRKDWp8YE0LeIJG5fe0MolUVqb4/LguGGnAWg7Gc/TVUj2VV4?= =?us-ascii?Q?zjiwAtFqJXEMOeLVlk5R77W/fK4IHru0sBghsYvRKoIyFmqRMHEllxayCIV0?= =?us-ascii?Q?tTg8WOsT7YIStOawJZSItcdfe3+K4H2x71qQIyXr61uSVYupDwplK0GSFgJ/?= =?us-ascii?Q?zD/eVJVWJzo24K5pcrvcivmDQG+vZEatKuYpL7h4fjPhCzutZlBmPrfYXpdm?= =?us-ascii?Q?dv3EXmq3S/miiv32qCzY1yjZr8N7UVTK4cBt4WO4aIHD0sD7XJRXpUepsnkz?= =?us-ascii?Q?fifwCsVHCTf1paNUByr0VyVY2Bb0xFc3RgkJqB9MF8G249bN7aZWvzi6ExSt?= =?us-ascii?Q?MLjcMEhiOet1O5fF18oROgNFpgRhk2EM/k5nCaXKdY4l/ZHWYtCWWu8PQjAX?= =?us-ascii?Q?jq/958+pzqZhKbEYi7ZcCUbmHHJUhJJ4wWG5jD+SfPrMYgnrERvM/9qmlG0X?= =?us-ascii?Q?8dUHLmF1Co5LheI/6ypDLAx6WvZfTRyQJIMo+Wh/WnLYuUXZaXG/FmXvv+nB?= =?us-ascii?Q?Z8qTNn88Zp8aa1WKrN0GCcxf1fTcjUsmnXDd1Qdwk2LWE5o7I4AeFVvnxMj3?= =?us-ascii?Q?/EUJAkZ4SNR/ZKr8SNnpwyxQ4mYny/QAdvwBs+nD3C+DEORWisplJHPcBUWF?= =?us-ascii?Q?IVkuSUa2GtEKu6svAhpkgQPcYnxwFc5x5++xUuDWELdW+ePjw=3D=3D?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY4PR07MB3063; 6:0PLQXi/BrUom+yhz0BuO+GT9WuowIyoosW8T9ZqnhO?= =?us-ascii?Q?ZOZoE0CBSXfAtZwzlcwbJI2ntBNGJ+ZUCxpUIAqPZcMm2qCBaI31xsLvol9i?= =?us-ascii?Q?oaVpJSM/++uOmDuGwTkSBCDlaBOgBYvXf5BcljZoybsplGu5KV1sY+eQPRFT?= =?us-ascii?Q?KdcqV7JDfnb9Jb2p7PG/OqGoL59XRs5zzjZlgTzsgSTYzuEC/VpKviJx13VV?= =?us-ascii?Q?kJTZGOGySIwk37lDvrFSWYLxoVh0+iL0Q0YHKvbksI0FklCoC59GC5AC7EmA?= =?us-ascii?Q?ZCXeEYvVTt1Gx1x9HqAOhoqDsFS9YLbpk3ipmqf9zVfhnG7Bq3xCapua1naC?= =?us-ascii?Q?VpyJXC1XROVI7UXTSu6pL/4yWnMBGuo72ogz4a0QxMyPsiLq+cm8oTYeiUYg?= =?us-ascii?Q?aYovSceiGcV304UUp5RgNY7eC+rLIz+MTr1ujG115Y+ECswlKWPgPgNgxvLP?= =?us-ascii?Q?D+T0e2EubTJVTIG+gjj2mT0WQKhZR4zJxcY4RP+jbQcdnmrrp3jfip/jHAUD?= =?us-ascii?Q?7QsvOKlOeY3U+E14TSQW4jhByd5RkH6jXqXhv4InAuWPKTp3XJxaESitLy3A?= =?us-ascii?Q?vEUTmtluH7C1cZILYPXltpqlUTKmdbsHLI1Fl7/gZ+Cz/QK7nsjgErDYVZwv?= =?us-ascii?Q?hBTSLW0p1UR0rCl47upMcGLzJ+z+2Y8qP+LXA6sTvj7gsMaw8sKNkQHrhP7X?= =?us-ascii?Q?YPSmblGmmvqQnDt8Mxhx6ekScTHtGJB9DNxWSb52iyiQVm/zAZjCdhhg5cHb?= =?us-ascii?Q?731s04h9gMtY91hKzVAI6doTizWcGgwPxRtfBTB1uI7X7itM8d7jTsHbLM0+?= =?us-ascii?Q?PPOzg4n0ucxKYxIFH/LK3e15IZqqfCH5F5ihD8CGH/WWHDP9x6E208bR/XYg?= =?us-ascii?Q?bzZoCw5zwMps5VYpYpGEvuAr3m/63PMVvpm9+SyP0J+TbGw7CGEy69scyh69?= =?us-ascii?Q?NBwdISqRG6/p6OwyOb730wJTPtp7YsmuTnSpIfMFW792Ioj9sgUDCDgkwndX?= =?us-ascii?Q?Q=3D?= X-Microsoft-Exchange-Diagnostics: 1; CY4PR07MB3063; 5:galJJmbqHff4GI0CW6Y/D6cUQp5b92jrnJKHcZJ6ywlAQdKnU+RSx5yxDGndxMgGNBpEuiPgbmG8SeQI9HyDD4FQ/cTuJP/2r20XuCn5evxoQjUx2usvQB3WjJmHE8SMHqsTXwe82BpbSWccpzf57k2ht1yg4ToF5y57DIolGJTAREcWcrpzLcsdYzuQX+niKDW3jOMmcEfnbH9eyYzsWcE6cmAkSl/PdxvPCm20qKkb93riNE39u/mrBBMHP2S/1pvB5mSnsjK1iRClXgPdR/gkStIyUkODN1mJVm2H29VtIwYFUsKtDFO3FevpftGAwJe62dHAttTZOIRW+5jAS/BFcw4v8pf9mYaYK4dbXLZB44i/1fv4oOrrTKIQVD03hpt2NhoGTaR0HWBzuxqUIDuAhwbdTNIcd8HRzKEFkBmINVZzuvJ0iUe2X02RVBbwTSrROWjuN0ObVLfKEjrpIFjSxssoFlxArsDMVbz/JZ5DcygrPNrU6d/0+yUUzjQy; 24:CO+fwWjrW2ui8LZtXfKZV+d9BSH4bRtrO4mgoaTAbYd3lYa2VBibtsgzym4w11bWIRj4LffqjtQavaIJKpXq558Lo1wefytV82WEJqJHfWU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY4PR07MB3063; 7:Yd1E2nhbMWh95KT10lMSdqQ5IzNUTWRTZxcsHpKgIQ2X9cMVcw7HDTuaRDYETtxbbY7ZmhfF42e35TAQb8K6s1nmo5E00eYoeljdh856e/DyKhDsmRGTwPgS3SaunrkvYHC4JCErsE6lWN2b3xka6ZF71TbRP3ZgLl4ueD+F2ptehdtFKpXGCY5JwsFTHXa8iFhpEeEFyWK7oBBtQ0U2NAU+qD2u9M0ZHNEvAGYZG6rQQ+/5ZxZl0Q5rTRxk/xrmseqUZ9rxqBqUxk34+ZYiRVU/GeXWQ/ABWikry6F6/SX7p7vvgZozfbB2VB9ViJw3UInuyzfTD+jeCroQJI4BAuC1C3RAN6YqImbAdiGyiicZbGluMN3ZfAJjPaguO8QjeYezib3UNTeJrDRsCjqV69JlbM0eCp4hO1I9azGVPyDfliuVa38XAuik85o1VxgH27Xd1//bwgI4J85K1NH+UYbwK+g/UzLUPrGw1gsijdBu6qGry6JYlrAgTukfxnEO47MX3ZXKwzQ6qbdPm00jdA4qigsJTCLPyqVDk5HexWbbAhJLoT5+WyvkSAEoaMgcxRn7m6lI0X8kDUD4e12D0hmMc80eCWJmyG057cE/73pXw/Ot54C+ZMxihPMcBhmKFni8i/vnmWS0rbCl9aYMcxrClXiujrs6RfpEdd+Uy8OJdrlPBQHiNd9YGix3cvWdmujBXEm9D1ZC69C3dQhqmSW6KZH2VohBq1MuQqsU2/7mGEyw3gmfAuic6A5wU8t7tTOYb678lt57A46DbgfRilpjbfDIp4VdCS4iXgbwQzM= X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jul 2017 08:22:53.2423 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR07MB3063 Subject: [dpdk-dev] [PATCH v5 1/2] examples/performance-thread: reorganise arch dependent code 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 08:22:56 -0000 Moved the architecture dependent stack set code to architecture specific directory. Signed-off-by: Ashwin Sekhar T K --- .../performance-thread/common/arch/x86/stack.h | 94 ++++++++++++++++++++++ examples/performance-thread/common/common.mk | 8 +- examples/performance-thread/common/lthread.c | 11 +-- 3 files changed, 102 insertions(+), 11 deletions(-) create mode 100644 examples/performance-thread/common/arch/x86/stack.h diff --git a/examples/performance-thread/common/arch/x86/stack.h b/examples/performance-thread/common/arch/x86/stack.h new file mode 100644 index 000000000..adb8e4fc2 --- /dev/null +++ b/examples/performance-thread/common/arch/x86/stack.h @@ -0,0 +1,94 @@ +/*- + * BSD LICENSE + * + * Copyright(c) 2015 Intel Corporation. All rights reserved. + * Copyright(c) Cavium networks Ltd. 2017. + * All rights reserved. + * + * 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 Intel Corporation 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. + */ + +/* + * Some portions of this software is derived from the + * https://github.com/halayli/lthread which carrys the following license. + * + * Copyright (C) 2012, Hasan Alayli + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. 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. + * + * THIS SOFTWARE IS PROVIDED BY AUTHOR 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 AUTHOR 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 STACK_H +#define STACK_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include "lthread_int.h" + +/* + * Sets up the initial stack for the lthread. + */ +static inline void +arch_set_stack(struct lthread *lt, void *func) +{ + char *stack_top = (char *)(lt->stack) + lt->stack_size; + void **s = (void **)stack_top; + + /* set initial context */ + s[-3] = NULL; + s[-2] = (void *)lt; + lt->ctx.rsp = (void *)(stack_top - (4 * sizeof(void *))); + lt->ctx.rbp = (void *)(stack_top - (3 * sizeof(void *))); + lt->ctx.rip = func; +} + +#ifdef __cplusplus +} +#endif + +#endif /* STACK_H_ */ diff --git a/examples/performance-thread/common/common.mk b/examples/performance-thread/common/common.mk index f6cab7718..532dbf61d 100644 --- a/examples/performance-thread/common/common.mk +++ b/examples/performance-thread/common/common.mk @@ -37,8 +37,12 @@ MKFILE_PATH=$(abspath $(dir $(lastword $(MAKEFILE_LIST)))) -VPATH := $(MKFILE_PATH) $(MKFILE_PATH)/arch/x86 +ifeq ($(CONFIG_RTE_ARCH_X86_64),y) +ARCH_PATH += $(MKFILE_PATH)/arch/x86 +endif + +VPATH := $(MKFILE_PATH) $(ARCH_PATH) SRCS-y += lthread.c lthread_sched.c lthread_cond.c lthread_tls.c lthread_mutex.c lthread_diag.c ctx.c -INCLUDES += -I$(MKFILE_PATH) -I$(MKFILE_PATH)/arch/x86/ +INCLUDES += -I$(MKFILE_PATH) -I$(ARCH_PATH) diff --git a/examples/performance-thread/common/lthread.c b/examples/performance-thread/common/lthread.c index 062275a43..7d76c8c46 100644 --- a/examples/performance-thread/common/lthread.c +++ b/examples/performance-thread/common/lthread.c @@ -76,6 +76,7 @@ #include #include +#include #include "lthread_api.h" #include "lthread.h" @@ -190,19 +191,11 @@ _lthread_init(struct lthread *lt, */ void _lthread_set_stack(struct lthread *lt, void *stack, size_t stack_size) { - char *stack_top = (char *)stack + stack_size; - void **s = (void **)stack_top; - /* set stack */ lt->stack = stack; lt->stack_size = stack_size; - /* set initial context */ - s[-3] = NULL; - s[-2] = (void *)lt; - lt->ctx.rsp = (void *)(stack_top - (4 * sizeof(void *))); - lt->ctx.rbp = (void *)(stack_top - (3 * sizeof(void *))); - lt->ctx.rip = (void *)_lthread_exec; + arch_set_stack(lt, _lthread_exec); } /* -- 2.12.2