From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0073.outbound.protection.outlook.com [104.47.33.73]) by dpdk.org (Postfix) with ESMTP id A1AA92B96 for ; Wed, 5 Jul 2017 12:06:16 +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=tqEaEpCR4tMPG020yCMpu4Dck7PA7oaL53Vjc0hxUGU=; b=d9/ozDc4X4G88BC6oqDuZdCV1EL295Lln1kfH5jrr650BUk+2ZwAUVdLA6DKaWM44HRHN130QSHrNcpZ+fYd8VYuq9wSGHrbDH6k0ZV9J0ti6yDxBMq3V3lYP28Q4+dG54rSS/PwhXjh0WhrJDi7Nb+SJ4ONRve+9qdaYKMNyfs= Authentication-Results: 6wind.com; dkim=none (message not signed) header.d=none;6wind.com; dmarc=none action=none header.from=caviumnetworks.com; Received: from [192.168.1.100] (223.180.17.81) by MWHPR07MB3101.namprd07.prod.outlook.com (10.172.95.7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1220.11; Wed, 5 Jul 2017 10:06:01 +0000 To: Maxime Coquelin , thomas@monjalon.net, bruce.richardson@intel.com, dev@dpdk.org References: <20170608110513.22548-1-santosh.shukla@caviumnetworks.com> <20170608110513.22548-3-santosh.shukla@caviumnetworks.com> <6d3b43e4-3e49-5c20-5be5-e380f0a807d6@redhat.com> Cc: jerin.jacob@caviumnetworks.com, hemant.agrawal@nxp.com, shreyansh.jain@nxp.com, gaetan.rivet@6wind.com From: santosh Message-ID: <887a0d2d-c239-6523-c17a-e333f6c63d1f@caviumnetworks.com> Date: Wed, 5 Jul 2017 15:35:46 +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: <6d3b43e4-3e49-5c20-5be5-e380f0a807d6@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [223.180.17.81] X-ClientProxiedBy: BMXPR01CA0034.INDPRD01.PROD.OUTLOOK.COM (10.174.214.20) To MWHPR07MB3101.namprd07.prod.outlook.com (10.172.95.7) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 501f5c7c-ec2d-4143-e78d-08d4c38d721b 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:MWHPR07MB3101; X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3101; 3:Hb0UVWz8dLTlpGH1CVt+pZN1xDFEG2apzr5CBzkDQQ0mZPKynNc/nDxcoLV8bgnAatxr5WZ5DeeYaedgvEytS4XOL8FqUnPVlwreT+lfnhL1k+aZ0V30X4nxpyDowgpszutIMH9wY5W8/7PZKib38LpdAKPMoGG7tHU0rW+byeCXgSjGVXlxPDlWNThZX7XandJQeYgf2jQjtJjwoaLn5+d1h74uICuBGmv8ivKjXbqP9LK+zzGbF+kb1YgjoJqT3EQTci61RYPlHNCfpEEaoLtbCzY8eiLnvS2HCFxjf3TVQhkeGvC1Xy5BJ/UIbu15fdzrPs1xor9BbQ8P7+l/mbnLFoRrsC99MX6z/j69BBGwW34aXvKiQzR6YYMwMf/EXlBEYUPQeZl+c/hjdNu9SDKEcOfJ5457W8hsYfItmVM1f6hDU5iKRcv5MaAZi3UzFEGX1LApuwHSsZmT6EFYVPFhE9wbqr6bMZ2AuAlmH04izCkLs4T74nCxx0REefhD+Caij3T4ge5mpn4999sA6fr8B7jPdeQ8gDom/KKn62O7Scft2QOD9bFfAh4maHZMC/AYS3kEqyl2U9JmqYULnCt5PWAV8XV8ZBum+ZaK1/bfj6a7yvFx5v+5HqXbjcs7Bm1AKETmhd8cfkANOCq68bWOYwvhlzPgouuza+b2RSmAi0BTtbMqu+uIYZYghSWdgaJofyzqaUgqztgUOeKjSB/+HlcvOzGBOhduF8oLJ5OcqqkolUNny1Gdgvwnpjbc X-MS-TrafficTypeDiagnostic: MWHPR07MB3101: X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3101; 25:/pxzDAGuTi8MFhsJpfbZEn28LBVzEbTArRIRx3C94Ao+3bBe+eopEi2FYtw+xg32lyUYG/qxnufa//tmcjZnAj090V/wv89i1pmJLi+tn/TY5hPXAJHz4/LKLTFuqMTzINgmj7Rlms8dV5H5eGB2poXErOeaH5YYtJPJ/TNJZuASCsmY4u/4CR7VZOZ4kDFS5eYnUhUua66vWgGw/tI3WlyDiOgu56q+VEDaFMMqXG3j6dTOwnw3vcZ2TdAI/iIC75YGIOcJg5WcvA+IUHXjrcKX/+zwYcHnx38A6glWcNBnvCLxhPWmCDmGH1IsnDZum2WkqLClM/K7U1FvB2N87f6lv/rbSlv0BprnCuKHo2YOTiX/Z5zXA8aZ2284BISzrAXlYgAcvcoLLyDDHJ92BiHmhNmf/1lObIHzXcnTqjY2C+B4A0H3C8m6gQDTyzoDib9JEz2obeivM6nCZOEIF5v20oD5FtbRY3zw4ihqnAin1e2MoruSmmy04Rc2TQTTd1LyLuYPigfUN3lvZZ+Ml2Ijzoc++FHVMc1Yy6nqCj7UJYfTdK+AHXSguDaEwZSwUcwfDRaSCRPvMYkfB7tDlDN5JuzFoel5rBeNbZTk51xeHDrv4D3fAZzb22YQAJ9MRPlLXHGMGTa71i3W4CvXaJokk7HAuNnbLR8Mp9HJ9ALoX79kn3vwLG/z+7t2T+v6T+SndpUcO/VP8CfOZfiyoTPV0zqSO1SqrrCDSl0jS4qkYq9abvbb+uj1SWD181//vJ/KhyuVlj3iLSLM2scdyg8QCNV6914F4h7118Tv9mAG0oi/i1ASVZIXJ+vd3DRCtYMq1mkTbai/zbQpvhxKLsKjbgHzkVZhY1vxkyQa0D1NS6UUUz7J2YVqHq/JSVMTx/bx5k3rhoKAn2RnMcEADGvHBRzoRBWqh4r9J8F/0hs= X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3101; 31:O4lyfiNjH5xCSQDHam5CMX1LG92bWrVjOPKgiqv5TJ5mEvbGS590jP3nE75y7MiEF2GeI3auyaul0a4aRHKrRhxyopYWyiLbSomMXRjgOh+HHZqLzJJ7XbeyAk8vpcxdM8mFnBB1UBuIFNZqbaJXSGLvJZtMhEjC/h3XFz9/CEJgU07s0mx/TwYnk6gYIAWN+Hqmn5F2GeRXVXREgOivOuzwswT136j5TQns7wiV9inuiOGH/67uoZIM5+FOEoc0zJl5gWg0Z4KV9rD3Fj+gew/BjWWfhpfi5z0ZLQGox8BM3cdPRUGLAoWEAx6iu0JWPyPUfCTXZxG4+QTbUZm6yOTJG3YJq6p6Xw9yItlciy6YuMUy/IpiGFwmCdFKLo5+YPAvdIQV0RABXtccm0hmxmcvp6zsWS8fjbb4LfWV6WMyFpAiPG+d5Vva5qFfSALmLih+c9V4KA3Teka769jJC+n/Lso0tmJZuu5BokRn2CckdA3c/M44ONGg1D1Z4mo1jO19PuWRGVGw9SHErtVZgwhy/aF4XG5Y9zoQCrVY2z42IuGjgft6+bvZ1Oi9qJNSnDImSU58FteiywOdipxFI6HUZCuSXhHtnx4jM7tS6efNW3oQDEcG1n9mAdf70LsN9lRh/ODnmX9y8S3OoRdGKgFyuBFYk4riEqsq4Zj4nFw= X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3101; 20:nJV5bHSFIFgMJYFUrjFyAeqrfTHxpjYKeQoiLOnVbKr7unTJlteibQQNDHxDmjUbBYTIT4av4Yjc7KsYtAn7qu1muP4CCkBT7hm2fGu3xf0wBh/mmRwnbNSC+TDs/nCyQtjfxt7nHiX0m1PoFrD49Ow3JT+QLeKauzOZMkYlcZs1OtcgHg8Kq8iUY/4lkZpq9LqDU2VWWuqFDUWGdPD9hhj42Amit7F3bqTRgoy3DFy1vFx9yKZ7GA/t+jxMmHw7UztoYmp0x3YWw/TzDXqf8cUhHYeJHuAnyA2NT6fyjKh0x92ppjcPDZM9782AkyLZ1TijCwPEEUr4PN1KOW3+3eYJxYzsx0U8zNnrSulVPNLZWutMX5r7ID2LbjpR9SZXBJ+Hd7XPdxHzK/RyiXvAtFRMoVefej1IcHeGl1+NKLe3Kkj3idQKpwrTI64BtYmn5B5F4Dn1Z+AiW8XX+McxSNBKncEEg7rEHiGRKWjg7P8FwGBRskNVeVSIcnJ1AzRzAp83Vz+2tDYowb/11yjgV945Ww44RwpIECBXycGwx2Vx9dgcajbH+1wzFfy6iduLIz/SzDrKk4AUaNOno8YvA59NVfX2PHgDrOARsOC7Amw= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(236129657087228); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(3002001)(100000703101)(100105400095)(10201501046)(6041248)(20161123555025)(20161123558100)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123564025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:MWHPR07MB3101; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:MWHPR07MB3101; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtNV0hQUjA3TUIzMTAxOzQ6VW83ekljWnRzV3gwL1hDSndjQ2xWQ3BHblhB?= =?utf-8?B?ODdOWkZoYVNZK1V4Z3EwUittdGhaaGhOQU12MnhDZ0VDMS8wZ2VKRzZHdXZR?= =?utf-8?B?M1JUVmo2ZEk5cHFIaGtJRGRCQm5uQVhwbUxmQ0V1blh5UmY3K0lzRncwZFpa?= =?utf-8?B?MmgrcnBPQTJjck9hY0FMeTdLY05GTVFSNEhWQTJyY2V6T0dkZnlpb1Axc0V4?= =?utf-8?B?QWpHUHFMd2dSejVGZUhSVWxYT3RLM0s2c3luSmhsL2NOMmVkdzBTUnUyWUFW?= =?utf-8?B?U0thSFFucFI0RVB5M0lsWk1RaGs0TUpBTWlqSklMcTRmTFFiUW1DaStDaVBU?= =?utf-8?B?cHJlV3ZKNVIwM0tmaXFsNkt1ZlR1MUJXNWEzNzZqSXYxZmVjbHk3c2pVRHI3?= =?utf-8?B?aHlCYmkxU1FTczIvVkhNaGZVMTljcTRSWEJkU0JoNVA5dDQ2THpqZ1ovcnhs?= =?utf-8?B?Z0xXU1N3Y2QwUTI2dS94Vk9GU0piN0tqeHJyODEyMjd1YjR2eXJOSlVqMDht?= =?utf-8?B?a3J6V2ozVVFINGZhaGJkSUJQL3pLUjR1TnppY3loVWRydTM5UThnSysyUWp4?= =?utf-8?B?UGNWWUcxT0xSOGVPUDArdTdMSE5CMURBOVM1ZE1oalhZYjZRQXJjei9idU91?= =?utf-8?B?Yi9YNGhnbW5DV01OTGtBbGxvWTF5ZGhnVkRPVG8zQTZBbkVzR0FnRVVOdmJo?= =?utf-8?B?SzdSdmFNTFhOMlZpb3J5SDI0MzNsVHMralZBbGo5QllBTXZUTGYxNmt2NFdj?= =?utf-8?B?TGFqZEUyblg0bWVtNHowRVR5Q09wODcxRnZiR0xDME5tN2Z0V3I2dnFzRFBo?= =?utf-8?B?NWNvTW5WdzJvRlZvYzIrZU94UjF6UEFieU5sdld1SUtKVHZBRnFpNUd0NWlQ?= =?utf-8?B?MllHZC84NXZBK2dSdWZjcXhuaEdwOGYyb0FFUE1ZemtvdTFvMUUzWFJHeTgv?= =?utf-8?B?ejB1SEZYZzY0OWJqOXhFUG8rbDFld2E2QjlSSGxQelJubnlHOURwUUxmVVFF?= =?utf-8?B?NkRkRUsrRHRDMUxOdml0UllCWkkvRHYwbFNZMWIyelprVjZVRE1GaHdVNjZH?= =?utf-8?B?bWhTU3hIMDdWdmRKQmNDNGNPM0k0RHlpMU0rMWx3SmxkWFNmSDdMZzlxeDNn?= =?utf-8?B?eXN6TFpzcDFlazF5L1k5cS83ZHBBa2dib2dwTmdYdFV2aTJSQUNKbVpyMUdJ?= =?utf-8?B?OWlXVmhFWmNSbUo5WGZPNU1EN3ZWYTBMcmhId3h0MEdhczRQellKd2ZMbVlE?= =?utf-8?B?QUxUQkoyWEt0TmxYbmwyTlFRY2pBYnpkbkVPSjRxRFpjRWR4eDJBMUl6TUhY?= =?utf-8?B?L2dlU3J6ck1LWDBDTEovNzhHWk93djdoOXorQms4YnpYN01TR09TMGpydDE0?= =?utf-8?B?Tyt4TEtTdFE0U0RIcG5Sd3EwN2tLOTNtenZkdm1vbWN3ZkZ5RGtHbmVhck12?= =?utf-8?B?TllQcWNseDdFelovMExjMUFSMEJjN2pEQ3ZZSWRvTzRoQS9CNitEV1FUUjAv?= =?utf-8?B?UVpGbC9BYXZIMGZXSUZ5RExLTmdHbm5uSkp4Z2VQYXNiNHQzbk1naW43ZmhZ?= =?utf-8?B?eWp4a0NoL3hEWHIyZ21qM1ArNXp6QT09?= X-Forefront-PRVS: 0359162B6D X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6049001)(6009001)(39400400002)(39850400002)(39410400002)(39450400003)(39840400002)(24454002)(377454003)(81166006)(305945005)(189998001)(42186005)(110136004)(53546010)(42882006)(2950100002)(53936002)(31686004)(6666003)(38730400002)(25786009)(8676002)(6486002)(7736002)(229853002)(77096006)(31696002)(4326008)(33646002)(117156002)(36756003)(6246003)(47776003)(66066001)(23676002)(5660300001)(50986999)(5890100001)(54356999)(478600001)(76176999)(83506001)(72206003)(8656002)(6116002)(86152003)(230700001)(2906002)(50466002)(4001350100001)(3846002); DIR:OUT; SFP:1101; SCL:1; SRVR:MWHPR07MB3101; H:[192.168.1.100]; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtNV0hQUjA3TUIzMTAxOzIzOnRWUUxjRjVaQjBPTG8vbk16aUorRjBjZ3JB?= =?utf-8?B?ZER6SkhIVUoySHR0UEkyclFpMDFMUjJ6VUMzUUZmMXlPZGlOc0xXQi94NUtJ?= =?utf-8?B?TG1jMTM2dG5rNGw0VGF5WUZhS01aNHk5aHFJeGZqTnlmb1o1MjJySEZjelUz?= =?utf-8?B?MnA1aGdJNjR4RlJhSmtDbUVramZTUDcxZEpoNDVXUk50dVh6aGh3aDlNR0dD?= =?utf-8?B?ZmlkNEtqRE5oUXhQOTdhRHkxT09UMnRWREREY1hhMXNkZEE5U2VEQ1U2blpX?= =?utf-8?B?OUVZbElCWnpRWlMvN3hheUpiODNmZmZzYmZyZStPK09hTVZEQzNjNDRQa3pa?= =?utf-8?B?cGdESDNCeFZYNTVnck9EeDBoMlJQQjdVWitWMW1wRU8xM09tWlYwNmNVUlVs?= =?utf-8?B?cnpIakwyQncvRDlaNFVCYVdYdnZxM1lGaXJwcGgvVFVEYjJXZEE0cUR2S2Jo?= =?utf-8?B?emZkSjNJSlJnUzdwRS95T2NXWDVrbzhzQjl0dE56TW5tSXF6SVZmTEpLcWJq?= =?utf-8?B?d3BJR1N3dHdwTHl3UmI1dEdURDVZcmFoZVMzZU8zQmZObzRXM3NmRnptcTRu?= =?utf-8?B?QVN3ckYzeFBwSEZPSVhCays2MzBwZzdYcE1iRmtwMzFBVTVISTNFSFIvU2VS?= =?utf-8?B?TW1VY3pmOWdmcEg1blZ2dnZXcTRQcWI1NGNvaHZkVzdJT05zNFdjVHZwRzcv?= =?utf-8?B?K09Fc25iWW9QTVlnVDlrV1kwSElva3VsWHFDNERBSTRleFFvTUlYMEpSOHpx?= =?utf-8?B?Z1J1TWM3WVBRbng5ekY5ZVRialNVZGxJS2M2cUpyajNGL2czTFlncldNcHF4?= =?utf-8?B?bTM4TlRIYUZ1R1ozbmFDUXFPRWpKejZSS2hwUEF1NnVsS21iQVNhVDdsNjda?= =?utf-8?B?amwvaERmTExOaGw0Q2FHR2ZNRll4NWxvTlVQNEtCNDU2R1orRnRxRXVqVEYr?= =?utf-8?B?VDVFTWVWK1I2dUVxY1pBNkpQdHVMVlBFUDVhU3ovYjE4bCsyQy8rMm1rVkJZ?= =?utf-8?B?cGp6QStKR0JsQjRNd0liSE4raXUvL3h2U3dORTZWSXpGaG9VTW83VHIxNDlB?= =?utf-8?B?aSsyZ0gwZjU0VGlDRXpHNGF1UVBQdTdJNkI5dkgrZDdJa2FESUROT3d1NGpm?= =?utf-8?B?aUc4VmRsQnZZSUk4WjlweUJ1UEVhQWo4QjU1VVdYMHJuaTBzeFpNK0hNSXQx?= =?utf-8?B?ZlVrY0Z2OFIwanpocjQxeW1SQ2wvS0I3MG9CN0gwdmtxcW1Td1lRcEpsQlFj?= =?utf-8?B?cEZ6SEVxNVo4Z2xUdXl5VW1HZ2xOKzZjT2UrOUcwZ2ZCdE0rd09SWXFpTCtL?= =?utf-8?B?TWhHUnE4KzRIWTc1NUovSDNTd1pGV0FXemZWZk9qSXplaEZGUzhVdmFyaG52?= =?utf-8?B?c1haakI1NmxNNjNMc2llWUY3MzJZYXBtZ2VCNVlBY1J0VlRFeGZTQndadUtU?= =?utf-8?B?dGxOYzJCMDVZYVhiT3p5b2pBelhKY2lGU1lXTkJIZVM1dTRlenhXS0p5NzdJ?= =?utf-8?B?cW45VTVjbDBCL2hPclZqWWJ3NHZ3Q2NMVk9GOGFVelg4YTd3V2ZsTTBXYXR0?= =?utf-8?B?ZUQxUm1iZTFxNy9IM3Zwb0tBRTFGM0ovYUg1Um00Zi93Q3A5OWhSVFFxdlZP?= =?utf-8?B?U0h5aEJtRVA5QWdaSVhmcWlYSGNhMFRScU1mNk52NTE4RGhMdysxbW1sUUYr?= =?utf-8?B?UGxaTERmL1V4MS80RzRSUHMwNmJSM25TMGxmbUE5SkR5NEFzQmVmNk9xQ0Qw?= =?utf-8?Q?oO6peZ/wo0iOI7hvbv3bpRJM9jp5j6OaQj1w8=3D?= X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtNV0hQUjA3TUIzMTAxOzY6aTk2bUNUWUhiakxVdk5mTGlkNWtOT2RMdFFw?= =?utf-8?B?azQxZzQrSzcvWTExcWhyYkM5cUxTMXozT291dGM2elpCMm1uVXJ0b1NKV2Va?= =?utf-8?B?THdOWW9zbjRJRlhjYWJoZ0RudnpWZFgyQjBKdW1aT1RVVWtBRjkzcXYyWXdz?= =?utf-8?B?eDZGUTNKdFpkS0owcEs0LzVQNFVnaTFhZVdlbnY2NWtkSUs5WTFwYVVGVkdV?= =?utf-8?B?a0Qwd2Jxc2dvUnhOaGo5Tm4wQnhhV010R2VCOERoc3VUaU43a25UVlV4TUZK?= =?utf-8?B?VFJRTnNJam51QXI2VVBtcVBEYzR0TzBBdys1YzdjR3NzYXpQM0NlQkFhL2Qx?= =?utf-8?B?YWZGaENBc3BLSXFqSGdQTnJRa3lWblowbVJZbmlndmI1bTNuaDRRMmU3dHpW?= =?utf-8?B?V0JXYTBIbjlaRi96b2JoWCsxU1NCRGd1L0JxVTI1bVJTT3JpbjZlem90V3Bu?= =?utf-8?B?cXVnQ0FvaHpIZWRPV3F1R1FTdTF3blNMd0xGSHo1aVlWMVA5UVo0a20xcXYx?= =?utf-8?B?WC9VclBMZkZCQW5aRWNrYkczNU5FZU5rQzgvUzRwcldYWGJ4bWw2aGVJdktq?= =?utf-8?B?eS92L0ZsNG9aRmRySDFGM2tFMVAray9lU0Y2VGJwQmNhdmNHUzR0Slk1WTQx?= =?utf-8?B?RXVWRDc4aE9KSnFucGdpSVEvK1AwTUtNRHBWYkw2WFBHQ2NFZjM1dCt3Rm54?= =?utf-8?B?UDhEM3Y0eDFRNkxFZDUyYmlrNUdzTk5BWGc1Y0h3RTBJbEYyOU1hWWN1OGcr?= =?utf-8?B?VFdMQ0I3LzJ3b29oNlJZa3RKZGRYM1NzMGZhSENReEJlalNwQk9IQUxlQlB0?= =?utf-8?B?aGpKVGp3NWZLYTltQi9YTTVlRjZhNEtZcnM1QXN4WUxEZ2VDOG5kTlVBTkty?= =?utf-8?B?aGZ0L2YxTVQ5LzZGYUpvVXU5OXlidVhCQ29yNWRqSGZxeC9lTGdlYnpmc1Vw?= =?utf-8?B?RVB6cFVBRXRocFFXaXZaWUdUbUVRNk0xS2xDY2lIWGJiZFhEb0MvaENBZUt5?= =?utf-8?B?eEEvSVAyQWQ4Q0lBKzFHRFNXMGdyNmJsZlBNWnhkNE1HT0ZGcGtEcXM3angw?= =?utf-8?B?UEtlUTEzK2pCL3I3Q0tIMGFIL2RBRisya2NJWk5qNGpRSktYTG5tTTYvUWFx?= =?utf-8?B?UTFpWVcrYXJ6L1lsZ1NUbnlFNXN4dEJOdDdJTkt0WFFMTElES3p4dVBzOGQ0?= =?utf-8?B?VGhtME1SZUk3VjBkSjBHdFhmWFpyc2RRSE5qcUtUSWV1R09LMjJRUDFTbE5C?= =?utf-8?B?U1p2TURGcml3bHp1aWx3K3IwcWNxRGtwRHBUU0phMXJJVm9ZdzcxcVpDaUsx?= =?utf-8?Q?vyaffLvIizXBJtcKqIJcLSV2kluQ/hA=3D?= X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3101; 5:VGlIilgfVfr3V4+DvbGN2tPB9ZPTx6H+gsI+r+n6joFd9rtLU9TCPGhBGB4yldklbnhqxFA4cJhCEMv06E7jKtCj6H4KW1yIqscKSj9Mx/2vxH7gWdQfvn5IdUd1TByCEJ24ornUf1nQD5U4UHbdVemFzKfRTdVr3NLK35N6MeAt5rU9pxgUCYvlZpkkqD8sW+MlBszpwwnbZ12Rj9XPv4R2m45XivfiOs2DTf2H6N55dCJ1bZ2EztoCAy74jmiAQ41aEpNzZELyr7nQEfJz3NRmnLC8t29lbDVcwVzXd0zKD8hqG3wf+aCC8/QwCaqYc2n93VYnIP93bqwlW0YQtzshIClGBY2FuA1NwrnkVu6IrCDSI1zDoh3r6ldfGIE4PiLPWiuS4bY/y2Zxh4ahzt/M89hVF5koihhZwrOiHw1NJykiq8mmykB2+kgz6CzIJFnpQAEYiPX+9p0raFpmlpq2weiyczu2NDMcbL2Sw0EPD+8Incm05ogKJPJPWhvy; 24:EZPmyTZ+jVucrmfEFwEGO3mP3gAh2ix+MYGStZALfxKD77dGHPtJiTL/OuuAKaIlzYSFS99n45gATl/iobIm0CwpqSyY+tYSHmalEyi+5hU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3101; 7:RPwoc9+3rcDTKc/+c0z6VVICZunyu3bdCxBmvaJGpdXuoKT14C8EyYPW0K165xsBD0WCeLZadH8VO0fIzlRUrd+3fo5jN+VpSLmOUx9nQnFgVp2Bz0Fel9valUsCbLl9YuxEHMM8Rbr1ajwNWS3Y4ynLw8agf5crcwwiY4xQhj2lK++zS4dD80hVHTfS4XSEfImKLT0hbx5lDs2sSdAQcEz4REZDbZKVziEIFLFwz+MbIpkcyv8VojxvZD0Su0/lGCcRv+a7cHPc52v6oxAWwbiApLpboD17BJcF2796JtY/qgAfS47Fs5bOpl0E9UPzPdS2/Kmn+9T1nhBARTx4vB+tl77xt6vDjTH+ewn5py6XlRCPM1jzPKVL/GmKGUY1v9Pk6C7m7HzspZZXcyq+f3BpDj3pNm/XjbCALcoTcpEjPNooWYMmK3ki7T3rdLT0Yr43PjeAwVedaejdfKqlakl8DO7/PQGkagEgObiy2SDCmVAMPJCH+Zq3q4B0h4js5WJvV/9/jxZrLdGA8a4fIYO0nC7GfYTgrVJXGQ/qRTIFW6ukxCYGkCDVu+n8ph3GsEn+NiQdfycjcbKYxrWfd3cM5DwbnVMpP/9SlaB7yNA56Wf6ScjUSkMWRAXyTRWadXxUhdYM1QqMv9g0dK8OmOnqzep62Y3OCY+OxzB9YSYxM4qxtcYkHm8IQNY6d6S5S1giraez5U5T6gwCJiyDS69CkObU7IfeRPMSVX77Tnga2kQjtyzCwrQg9sXg7eNzbssD2698nMeOQCEzR5hFjIZloudgd62WE2D0oHo/Kj4= X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jul 2017 10:06:01.0855 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR07MB3101 Subject: Re: [dpdk-dev] [PATCH 02/10] linuxapp/eal_pci: get iommu class 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: Wed, 05 Jul 2017 10:06:17 -0000 On Wednesday 05 July 2017 01:47 PM, Maxime Coquelin wrote: > > On 06/08/2017 01:05 PM, Santosh Shukla wrote: >> Get iommu class of PCI device on the bus and returns preferred iova >> mapping mode for that bus. >> >> IOVA mapping scheme for linuxapp case: >> - uio/uio_generic/vfio_noiommu --> default i.e.. (RTE_IOVA_PA) >> - vfio --> RTE_IOVA_VA. >> - In case of no device attached to any driver, >> return RTE_IOVA_DC. >> >> Signed-off-by: Santosh Shukla >> Signed-off-by: Jerin Jacob >> --- >> lib/librte_eal/linuxapp/eal/eal_pci.c | 38 +++++++++++++++++++++++++ >> lib/librte_eal/linuxapp/eal/eal_vfio.c | 23 +++++++++++++++ >> lib/librte_eal/linuxapp/eal/eal_vfio.h | 4 +++ >> lib/librte_eal/linuxapp/eal/rte_eal_version.map | 7 +++++ >> 4 files changed, 72 insertions(+) >> >> diff --git a/lib/librte_eal/linuxapp/eal/eal_pci.c b/lib/librte_eal/linuxapp/eal/eal_pci.c >> index 595622b21..2772e883e 100644 >> --- a/lib/librte_eal/linuxapp/eal/eal_pci.c >> +++ b/lib/librte_eal/linuxapp/eal/eal_pci.c >> @@ -45,6 +45,7 @@ >> #include "eal_filesystem.h" >> #include "eal_private.h" >> #include "eal_pci_init.h" >> +#include "eal_vfio.h" >> /** >> * @file >> @@ -488,6 +489,43 @@ rte_pci_scan(void) >> return -1; >> } >> +/* >> + * Get iommu class of PCI devices on the bus. >> + * Check that those devices are attached to iommu driver. >> + * If attached then return iova_va or iova_pa mode, else >> + * return with dont_care(_DC). >> + */ >> +enum rte_iova_mode >> +rte_pci_get_iommu_class(void) >> +{ >> + struct rte_pci_device *dev = NULL; >> + int ret = RTE_IOVA_DC; >> + >> + TAILQ_FOREACH(dev, &rte_pci_bus.device_list, next) { >> + >> + if (dev->kdrv == RTE_KDRV_UNKNOWN || >> + dev->kdrv == RTE_KDRV_NONE) >> + continue; >> + >> + if (dev->kdrv != RTE_KDRV_VFIO) { >> + ret = RTE_IOVA_PA; >> + return ret; >> + } >> + >> + ret = RTE_IOVA_VA; >> + } >> + >> + /* In case of iova_va, check for vfio_noiommu mode */ >> + if (ret == RTE_IOVA_VA) { >> +#ifdef VFIO_PRESENT >> + if (vfio_noiommu_is_enabled() == 1) >> +#endif >> + ret = RTE_IOVA_PA; >> + } > > >> + >> + return ret; >> +} >> + >> /* Read PCI config space. */ >> int rte_pci_read_config(const struct rte_pci_device *device, >> void *buf, size_t len, off_t offset) >> diff --git a/lib/librte_eal/linuxapp/eal/eal_vfio.c b/lib/librte_eal/linuxapp/eal/eal_vfio.c >> index 946df7e31..04914406f 100644 >> --- a/lib/librte_eal/linuxapp/eal/eal_vfio.c >> +++ b/lib/librte_eal/linuxapp/eal/eal_vfio.c >> @@ -816,4 +816,27 @@ vfio_noiommu_dma_map(int __rte_unused vfio_container_fd) >> return 0; >> } >> +int >> +vfio_noiommu_is_enabled(void) >> +{ >> +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 2, 0) > > Please don't check against Kernel version, as distros may > have backported the feature on older Kernels versions (RHEL > for exmaple). > > Also, it doesn't look necessary since open should fail below > on older kernels. > valid point. in v2. Thanks. >> + return -1; >> +#else >> + int fd, ret, cnt __rte_unused; >> + char c; >> + >> + ret = -1; >> + fd = open(VFIO_NOIOMMU_MODE, O_RDONLY); >> + if (fd < 0) >> + return -1; >> + >> + cnt = read(fd, &c, 1); >> + if (c == 'Y') >> + ret = 1; >> + >> + close(fd); >> + return ret; >> +#endif >> +} >> + >> #endif >> diff --git a/lib/librte_eal/linuxapp/eal/eal_vfio.h b/lib/librte_eal/linuxapp/eal/eal_vfio.h >> index 5ff63e5d7..26ea8e119 100644 >> --- a/lib/librte_eal/linuxapp/eal/eal_vfio.h >> +++ b/lib/librte_eal/linuxapp/eal/eal_vfio.h >> @@ -150,6 +150,8 @@ struct vfio_config { >> #define VFIO_NOIOMMU_GROUP_FMT "/dev/vfio/noiommu-%u" >> #define VFIO_GET_REGION_ADDR(x) ((uint64_t) x << 40ULL) >> #define VFIO_GET_REGION_IDX(x) (x >> 40) >> +#define VFIO_NOIOMMU_MODE \ >> + "/sys/module/vfio/parameters/enable_unsafe_noiommu_mode" >> /* DMA mapping function prototype. >> * Takes VFIO container fd as a parameter. >> @@ -210,6 +212,8 @@ int pci_vfio_is_enabled(void); >> int vfio_mp_sync_setup(void); >> +int vfio_noiommu_is_enabled(void); >> + >> #define SOCKET_REQ_CONTAINER 0x100 >> #define SOCKET_REQ_GROUP 0x200 >> #define SOCKET_CLR_GROUP 0x300 >> diff --git a/lib/librte_eal/linuxapp/eal/rte_eal_version.map b/lib/librte_eal/linuxapp/eal/rte_eal_version.map >> index 670bab3a5..2cea7c272 100644 >> --- a/lib/librte_eal/linuxapp/eal/rte_eal_version.map >> +++ b/lib/librte_eal/linuxapp/eal/rte_eal_version.map >> @@ -198,3 +198,10 @@ DPDK_17.05 { >> vfio_get_group_no; >> } DPDK_17.02; >> + >> +DPDK_17.08 { >> + global: >> + >> + rte_pci_get_iommu_class; >> + >> +} DPDK_17.05; >>