From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0046.outbound.protection.outlook.com [104.47.33.46]) by dpdk.org (Postfix) with ESMTP id 461392629 for ; Tue, 25 Jul 2017 13:23:31 +0200 (CEST) Received: from BN3PR03CA0107.namprd03.prod.outlook.com (10.174.66.25) by BN3PR0301MB0899.namprd03.prod.outlook.com (10.160.156.141) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1282.10; Tue, 25 Jul 2017 11:23:30 +0000 Received: from BN1BFFO11FD011.protection.gbl (2a01:111:f400:7c10::1:182) by BN3PR03CA0107.outlook.office365.com (2603:10b6:400:4::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1282.10 via Frontend Transport; Tue, 25 Jul 2017 11:23:29 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.158.2; helo=az84smr01.freescale.net; Received: from az84smr01.freescale.net (192.88.158.2) by BN1BFFO11FD011.mail.protection.outlook.com (10.58.144.74) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1240.9 via Frontend Transport; Tue, 25 Jul 2017 11:23:29 +0000 Received: from netperf2.ap.freescale.net ([10.232.133.164]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id v6PBNOJJ030534; Tue, 25 Jul 2017 04:23:25 -0700 From: Akhil Goyal To: , , CC: , , , , , Akhil Goyal Date: Tue, 25 Jul 2017 16:51:52 +0530 Message-ID: <20170725112153.29699-1-akhil.goyal@nxp.com> X-Mailer: git-send-email 2.9.3 In-Reply-To: <7834b3bd-0800-500c-1c89-3b89e2eb47fa@nxp.com> References: <7834b3bd-0800-500c-1c89-3b89e2eb47fa@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131454554097250091; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39450400003)(39380400002)(39400400002)(39410400002)(39860400002)(39850400002)(39840400002)(2980300002)(1109001)(1110001)(339900001)(199003)(189002)(498600001)(47776003)(6666003)(4326008)(85426001)(626005)(86362001)(53936002)(38730400002)(5890100001)(561944003)(2950100002)(54906002)(2201001)(105606002)(106466001)(77096006)(2906002)(50986999)(76176999)(33646002)(36756003)(69596002)(97736004)(5003940100001)(189998001)(1076002)(68736007)(356003)(305945005)(8936002)(50466002)(8676002)(5660300001)(50226002)(48376002)(8656003)(81156014)(81166006)(104016004)(217873001); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR0301MB0899; H:az84smr01.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN1BFFO11FD011; 1:6Alc+OVEwoGeCx/hxeJjPW8LzHX47exVcOrYGBd57?= =?us-ascii?Q?nOZFqzuqVdfSVLlByRPWKnfUITFlGG4EUJPK8rG1VOyLHA7v6xxU7ebw17cG?= =?us-ascii?Q?yDxyMh6ENBCRJXe6O4QCI5fBppjmXFbdRotJvXKlJx8HoBNs1BIdwYsGRV9t?= =?us-ascii?Q?I/qQkulR5kr6UotAGhlOWJa29j+fcCdDE81XsrUZGiDwuXvSTi6vq/mEsznZ?= =?us-ascii?Q?H1wp3ry+CqCPtGBEGCcgnaWVNqCtQxbBC7KgyfxZkArE7EIhvjfUPpUZTDGv?= =?us-ascii?Q?rpW/IdcpNqoZbMLoqV4ZBt6zVOyIOZy2vsvfgWfh352edVTnebbwNnMEUqVK?= =?us-ascii?Q?o9uOegEYdBCi283v7lCKTQVhKsbeMUpzNJGmwoOH7oCUPclHCGTx/ufWHIZk?= =?us-ascii?Q?FER+8CEAemMnZXRtb8QI9guZU8M3RfsoDDpdW4XakbEqMea6IV6g/EwVsdjl?= =?us-ascii?Q?LLwL4SIpG3qLjsXrbwIoK2v4MiZ4Wdyx+y0Ou3249AF4HcEiWndtk4nUNLhJ?= =?us-ascii?Q?AY/OD3ReXz7n/tHQ5wRjFSUra6EfIbbcjgu5NBj0W15kiacw6OMZetarfCvl?= =?us-ascii?Q?sZuu/BwOFRVMActhHwpHRSSn+zQpN3r/B05NyKlXz/V8OifCdwmvmWiNabn2?= =?us-ascii?Q?3cRWTgSZxjCdKU9/7FFl40XKX0Un0Gk+9/8X1XaJI981dBhNFc90xDZg4emN?= =?us-ascii?Q?uzNhBg+AEUg9dhu9NXCRpVYoQQJI1nso6NuUVpcJBaFuz2Qq+znZGdt/p89E?= =?us-ascii?Q?j1+nGAW8LCJlkHVK2GHwvsNPjhqYnMTM1HqnxMld5eudxa4ADN3V1FXMA2pd?= =?us-ascii?Q?ye0Zz2iYztbL78pU7At+76q81PEoEWgrsu7D0fuzSWCi8rqIDSMQixJhmJ4E?= =?us-ascii?Q?TZIGV/A6vLBAdA1Qf6lqZqB7wDVF5kADnsMrF/eFOWB6mI22oSZ4a2L9367o?= =?us-ascii?Q?1AJE78KhpdSlgdvDh8CHOVdo5VTJaoJyty0lNczRymyDhcdvcKzcMBfSvyIJ?= =?us-ascii?Q?UfF4m9EFbSfdyOGIAwPfPSZXRIKisSste/9FusXX0DRLAGeuW++vy5wZkYcq?= =?us-ascii?Q?a+we1T9y/hxCOKNIHIBpD5y/P41?= MIME-Version: 1.0 Content-Type: text/plain X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b1688d28-8290-4dbe-8dd0-08d4d34f9387 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(2017052603031)(201703131430075)(201703131517081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN3PR0301MB0899; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB0899; 3:pY5JJC0qYlbuFW6rPyd9Vtvt2kAr3CB1yDk5+gbNBBL88f51buqf12DveWdXVDtuq0WL2+MuGFpOf8uqN6yQZ9DpHz2U+J2u9w28GuCP+uLt+tk6fzNnzM2hyaU02gtvep99P9lMNmCV0Nfo35j/HQQeirRbvSJcYqFP9qRSElb23r2jVzPnrdYtfPckk9ix/YcEyF4i/Wv0v2S2a7LLzyHdpgh+aAsVnpjTFbX1/8q0LP43RVSgrymZsGy9ihEOPrdo9SYSqVp0R58ct5/2KAZ4FhebBV/DHsSc7X4pc0VkIiYqfoHoDemAj2CDCOwm5WLoV3e7920wUBn0hb8fdB5xkbu5tSEpDjlzylEbKXiBgo/RtCK/Ty2DMdIN2zIG5cDim9ipGGooo7M3U6/y4RnvNgrFZmIaG+W3oL5eyBuvk+LoyhJYk2mK1rlL51B17UTirmg/uS3QkcoInIU/72u6nDkColwVyMWon7jcJZdhuEv/8/CVm4jsKVmypQI39+3m9WgOK3G5/s6HZcU6lHX7Kkxr7iiH6pdPxqWOzoguVxvAUKlyw+aaBhSasoaud51Hrnc0l49n4sacS6VbGkC3e7Y2BAcWXKZEGfejVW97WEaHjKGSkDed3A/6FSkpqpAT8nLpo6cc2Pelw2eJ9jHrO0W8eaDZAXvqnJC2oFoxgoV5G7C8Uvk4JjYOBEKiI30lkAh2uEkuiOLv+/Fi6k6m0eoaMkUDWHj9gZTHRlaqKYPi2kRghZUxPYr21xZeEQrozivq+kgKq0iQtViJt2VcxYcE9UbFhXX4k5R+EaHVNMgQ/aOJkIdnsGHFqeqEnM2I5a3/xF1IcX7wxD3adq5zwSmHSZqCtoSYEIN5zJ/Jrj0n5HGWuCqh0y3S6TrS X-MS-TrafficTypeDiagnostic: BN3PR0301MB0899: X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB0899; 25:V0o7h4jRgLzscukItpfDUIw9gZdutv66ClMMSrsr/GS6F4fZsB0qMDjtPdc793+XNBv/uo7aJ52vB9lRnAZioHjKRrP2Flj1lE419/MbBEUZkk6deYSpOZ7u5fFtZlWPLyWDZeQ7WKhmC32Do5dB0J4JPZ8lip4qOEYfU5vYW7JH8mvuHc+7w5wLlGL3FJYuJOIJpG92W0wRPYlanv1USQfYPjDZOjDRgSLnKjzt03woD9LJ0eHipbfuwx6jiCKVoPf7NitLRemzjd7ZkCvEUYLV+brBmZ0uA/i89pW7JXHiT44CKlIPKmBOhQPlWbSHnNMkvbUd9KdH+zKtqURocrv2IEr5KsmbFnef9da5/JSuWqsQQHagbS3v2tKCorxo1VOOVDQeIXgu42VXbezhQgKkM8emjLVgcFeSXddjmtPjSNJdY6G7ZMl+tgdjpmJV58U7CaokxTR+tX6ve7GFyBdkSA2kLo9sb6nXsjk+1UXVFF2GCd4GCZnr1+Xu/nyALYxXB03cWwHiDvAZSOfl95HYc6QqpvsuiEAl17/QUkDWtmhONxhvUG83CFkU5UDzNYDBArgtuFjIYTGawFqiXKYUtJ15xDNOhKBXV3wnXdJaaVgW2wTGYJtfzd8eIRsStPT58qlA7A0w2ZQEsqeuDWrv6VO+aqtnJ44C87ruLOvV/mVkL6S5lRrQW+qLJdt2kVqPd08bJibcEcMTl0dH6meTwNR8q6nJVZtwr8OeGQBA8IA37qv35FFOz2VAc+DZILjDUMSA4zIoSZR/U+OW4jijyfOU8WiF1MV31JPz2CcbY3g0K9Z5cQgwUkO1fRlmPknImYmbG7g3Un0j8i3YA4eUknrqgsMGddrywNNOYEuePLCSe4cNa+5aoPAQq+rl6f2/o/M9d+UC0h8RcHVdkISueDBxuDxoSSC1TAMCygM= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB0899; 31:ojoU3uHxydsqEY9F+IP2qdFM3+vz97Dl1PFHCXT5jo9FZV8WzN3ASRMpYmXoqc80ARapkPhZDf3hc7FeZdNFhNrZK/zNyJql+8dTM5Cc3N4o3/fhu0oL06yYXU4F343PwkAiLFlav6a1m4Elgu3vlhq2NTYRMEytYnt+ey40jNN29jWA2ZfzpB4108N8Gl9QXEL3+SOtYhVXYkh7NMhuY/R0GCC2Q2gvhBNGSxU37ZO9glet4AXzpA1zWP0EP5+UFLtgx0VvnxQO6wbOCsCHivDWjQQ/WyNIAwxVGbPchYcgoJkPzLUYVzzrFrKe/QVvN5zDIdjx4rkUAvrg8ls+bEVwrWuprSN2kdxv1a4TruJ0s+Ccv2bcC/veebZnn0az3PNk5RkvFdjDNgWydGg0QBEv0yV+tLW0rBcLvEANXOOI2boTByyL7rmVQ8EWHfXM5emOoozsewy+FXxdo+MKZvNyndC5JQtq7GqNwmCKzCJxDGpS5dFTyidIhsrtD3Ew6xvQaHXBvvcMAFyUotRffv3vmC0Tze9dsnh6DETFKAFfD1fTY96WClYZMT68a2kyiwfjwuMdWd0KOWZZzzyH5dC/rvBn7mlmXdJhd76uHFbtWvFgjuPDeHMmFzfrh3uWDTOfC0v4fYc5IHJTTOqzkzbtG2wje6cRbYSIBzrfzn0ognSkvL9TU8G3ksK1z48kuKofxknQaiWPS4ryBszNXvx9jTBMpy9Al1oi83SFBw8= X-Exchange-Antispam-Report-Test: UriScan:(192374486261705)(100405760836317); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(601004)(2401047)(8121501046)(13016025)(5005006)(13018025)(10201501046)(100000703101)(100105400095)(93006095)(93001095)(3002001)(6055026)(6096035)(20161123563025)(20161123556025)(20161123561025)(20161123559100)(201703131430075)(201703131433075)(201703131441075)(201703131448075)(201703161259150)(20161123565025)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0301MB0899; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0301MB0899; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0301MB0899; 4:RCdXq1FIqrF5kjT/2ODvmTvfkHpIgtRwcklMD+RQ?= =?us-ascii?Q?pzi7Wi14ly1VU4J5CIDAsQ5XH228640k4Vhuf2hhhCy3WH5r0KN2KwJbfs5W?= =?us-ascii?Q?gk7Y2Swmp756LfAm92Yb/KaHj6fD0qIBSbNQw+SSCihcdKSfnplDSgOIgRso?= =?us-ascii?Q?GbI7vvmGgxCGw9f5P52A7oHqkD4E0gCnYtXyI8MxgAojUR8oApq3vwJYYbCX?= =?us-ascii?Q?ebL4NDzphEwRb79Xq8CKKTZyC7pWZr28K0ihOMdDUYFEHJPJ5Be35sSsoFHb?= =?us-ascii?Q?b13sCURhnjBYTwNpoMn4BWbWosjP/VVGAAFXWkCIcQaFOfjMrdZSSJcwhdIB?= =?us-ascii?Q?+R7RmCrPR4HNKgx7FD855hQoEIxf9cUUH4aKFZUquU57kaIQOkj9cV6Psz0M?= =?us-ascii?Q?z2BkE5ukp51bNA5L9oc+BE/XrD3OE5tCwZaWi7nXISQJNP1AKlwC/ED+B5sB?= =?us-ascii?Q?Kgbz6PAUlVuNY1rzUZARB8aQxfcakrdWJe2xdZsU/o9qvhpAyrjh2WsXrG67?= =?us-ascii?Q?LkmJb6X4nr5RfgiQhPGxJtCPBfA9qo2ZBduiMUHzOY9gGzfDN0c8m5uZeNNR?= =?us-ascii?Q?Zi2BCgAvayXgggeZPNyUYegj7DO6rbb5SpKxqizdCItE45lshVtcMMurosMo?= =?us-ascii?Q?jAEhmjYvVIzLX4xUj3qSOqsSICZeo0bvg0mqU6RSrlLhkbYUh1u8KeZUWgYT?= =?us-ascii?Q?6ANR9mxh6L724IQ28lVYFOknXXbfm5E33HWPvsTBNp0T59BQmUVjFSsMX/yG?= =?us-ascii?Q?ta42Ruf1D3RZey+yyiyC/WscuU40neU+QFU2QXERu4bIR1wbAT6BxzNV/okg?= =?us-ascii?Q?1XWo+JNQrU658JO3niC8JtVlIotxgwt3c1vFPlm+bwE0cqznFXsXs8FccnZY?= =?us-ascii?Q?XXwJGDUYoKfxgtkjoPO4ckHktb8DWqc1r1O+KWw/Zx3Rn3ZltrYXfbPPKD0N?= =?us-ascii?Q?n93qzbek730E4k4+ClE1Z7OEvZ35vE1eLv6PuYoI1ELaEMK/i+az6dmXK6+b?= =?us-ascii?Q?faAzh662AyUCzmLSriLFfnf8i6KuKrQjOEueWEMPlZELGh125zSfG7nsehzx?= =?us-ascii?Q?RNf9u4O5b8fpaKS2Jw+bqkS+Y4AbaUFrWwrSfQX7we0ceYnA1nL1yzINCI3g?= =?us-ascii?Q?/SSEQlj8Nf23gl2JEOBt9RkuxEnp3ctmlfwoH5HkTQLmgF7sApGUNgeLaWZW?= =?us-ascii?Q?sriXXPDXnQw379oqGSIJXSOK+PLI7kGeVQuP0MNuhJsikzmrw3b9x9GPSDtp?= =?us-ascii?Q?gc4HpFjInwPDldOFpHmWTpA4KclX6h0MnbPGhk7rcvYrg2ZNlPF8ziSLkZmQ?= =?us-ascii?Q?BQ=3D=3D?= X-Forefront-PRVS: 03793408BA X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0301MB0899; 23:a8buqm4ox21rKh7qJTiHKgn+q5BG4lRbI5CCJEn?= =?us-ascii?Q?CeZgGqiXiFlO1Gg27Yosd78WYLpy5j/rqevO2bYt0oEIRPIBlhz5DiM/YIrr?= =?us-ascii?Q?/zU5e3beWzgO0dkDg03LR9itpQ7dYEq9vBQGLOEf4J7QVSxXJwHrZxgfxxYY?= =?us-ascii?Q?Nj0ZRBnx1E2J5XZLFYirNhYTjKiqxAS6XrEAWSK6GvuR8xIXHb2+5/D9GqjY?= =?us-ascii?Q?vHllkogl1uypi2cfxmyCcUJy2slwVDmwbV3HtrzciL9JLu5z9lFG7Npp+J5x?= =?us-ascii?Q?4vakYqDYQtFOGjTbT5XdPMDxTTMt/QTYojY9gBifMyr4cPELvKNPjfnLJlst?= =?us-ascii?Q?uxmz99lIDm38GzhKrejexM66KqEV70SqX5kndghoR57gVLnv9SyFanf2XUUr?= =?us-ascii?Q?cbvAJ1pngA26KXP1nkL+TKTj8ZpaQE8U8Levc9cAqmOhINe0aRv4RbSMTLwL?= =?us-ascii?Q?vEJfbwfR8IO6iMLLE0/sAucvnwKASstj40ihXmCHGciLM/EkH2E3UUjPqX0g?= =?us-ascii?Q?yCRDVcDUn2QExOgrd0iNb5tbTe5y57SkLl5BNENTjN/ElVKA8DGK7qKUddb0?= =?us-ascii?Q?THdiEZrvQDnP8M2rYfsqYjkYsokGgKEuNFgQpezt89ZjGzFuKIOZPHC6jy80?= =?us-ascii?Q?LBYgySYyNV1GD4vZc1g8JwlXPUp9ZMQcGjUPyuBlGo35mxy0MCfazz6stb+w?= =?us-ascii?Q?2TtCYlnfEchJ5CuerGCTABxi+8FMsE04IlGy4Zz2UL5rd6hvrTfsclqKzq49?= =?us-ascii?Q?+yaJ8bO37CsXP0Fa++VKb3JbKBV6V+biVh1oobvcKNZPmfmbu2x32JCjJKay?= =?us-ascii?Q?2/Q8OPH4CSSKU7KwYRhWxbOWVshJEpAk0i5t/qK84WdMSY2RnWKog05IaNlN?= =?us-ascii?Q?YAofDbqDKjRGr8ZQvZ1c/YEzhY3GY9t+xyslIKeYknAnOFWeRvaZR6bOApWB?= =?us-ascii?Q?CpvYNxv7/liI2IzU74OBMdz3eWp1/vWZibAvNoVZcAk2fmts5Honatpn3K9y?= =?us-ascii?Q?/KRWS1gF2niegTsuPCWEaqv8+wLR9yqKvNUoT/Z8/T8H+86ZFhBrcHBGTlMM?= =?us-ascii?Q?+c1oxM8LiWyvSTFPnKmb3UIPzSi1YtDnFGkxkbtgo2E0DeIcRiCZBG+c8sSX?= =?us-ascii?Q?Gd4vafZXAxG5OTP943VZqiJOu82CkGVfVCQbWHjljZ8KwRHMKpw1xrdFoGo9?= =?us-ascii?Q?LY5bM3ewXLICgccZhXfZUh4W8ogWewv4D7DNJ/uuafIBXsWjIkBOPNZp0Yrd?= =?us-ascii?Q?4/JuJV2LAxzoAd6akvC0HsEoGQoa2AxiPYmhVY37QxapbXP/WLp9HNqEBD2Y?= =?us-ascii?Q?qzm49fLSVK9ruAPgCRIOcbaBwLUdLPXMwWKq6qywUJlsG28EITw5CXeofkHC?= =?us-ascii?Q?CWsu1Mg=3D=3D?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0301MB0899; 6:NcdOI7+ukXCLawfACIzBx4ydUuQX5IXvmdsULur+?= =?us-ascii?Q?qp/0rvwglEvC/zI9LlyYHH4gRx0ffn0yiERlqC2CWpCI3wXjGT7ELzVfKVya?= =?us-ascii?Q?iU6IDUEhe9THYUKk+tpzymecH4F1NtCNdvop1FTTTewAd9Dv6fLWOOx6qY4W?= =?us-ascii?Q?9LOyi+5FIgP5XS5Y66EN7uKPfKp1RWPqjro6OMQDjSDsU5sLy7rMmmg2/Xvw?= =?us-ascii?Q?3wHMpykPQAb8n/tl/U8t2lTHcuLDJwAvBqd8e0Kfb6U4x2YjjSkfxBnGj5hi?= =?us-ascii?Q?TljUW6PIesk62px6ntghZerj5eE0/756xawhR2ezOOEeQXMpHITuaOZx4GkT?= =?us-ascii?Q?h2dRxoF0CApB+6EF1EAGCP4xy0ZiJCv7r/M3nBs5kXvlodCGWwyT1I/ZGMWD?= =?us-ascii?Q?VfP/7F7jmnZZWA2USNUKotdVtYTz+RGl965lmkUMm6dW5XxCVZPawdxeJIZA?= =?us-ascii?Q?aqVIYqew03YSHan0Cvr3LcxuXYeByp4UjfFIjgs7zVunM3kbPEufI4wjosuL?= =?us-ascii?Q?ms4t6WA6FyJkdRQRgretH5ncLsw2cTZNfmiJ6OyGzp4I9PJroDwF7WELtCSj?= =?us-ascii?Q?Ex+K7revtwQaZva9TtL3cK537CHZZnNXc52+mJgiYRmtVfZFAblVuMly3vwi?= =?us-ascii?Q?OVhX3lhltNhSoedKueIplz8yA4fKijNurhfzQjyZSyRFJGnbjb7TReDMMnaB?= =?us-ascii?Q?hWbCpa0JYivqY28DRq2GXexuWJWP2Xv4tZxyDgZVI3w8CIq3rFffKD0J6hYg?= =?us-ascii?Q?nc5MzT/C2UNw9tfupBjkQW6meLXVJENv3+ulBNyaCMWN1E7xw7a3Uvt2I/d1?= =?us-ascii?Q?bIPcrpDaLyLHd/YljaGkY7LP2cSTOQufYzh9BYo2/bJAx6LYOWksDqnzCcvB?= =?us-ascii?Q?+7qBSsZuNUd4Uc5FHAPog6GmMZCxj3UBw+a6J609tOcPH31CO/B++9lDXRS9?= =?us-ascii?Q?P27HzdmAOXCpP5qQ+1++JLFOZUB6ieSrLxPK1EZ2tg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB0899; 5:t4QpKa0v/QI9QVOjVskLQqqvM3VlOgHoRLOo054V/yqxQxVlqcBaKs7TU6vJS5j0UQlL+eJtkuemrU+qnIHq5+lsnh2g6f5QZDJpki8n+SpFEWZXPohddiGaa8c+qqTLgi1UdlDNuejY13uu//V/q/mARcq03ji36APdQc6BmxkI5LPneOJ2z0qsOPTqvR2NQ/UoKF4Z6e/qdWDSXGefsZI67itU8RQs6scC5MdeJ67JyvoHdZmgdQhEh3QY0IC4SRbNAvapPrpKGljyzq5hd9yeqyV0E6vg4ZxrdavFF9q5VvLuTCX+Qsf0W3FPkmg2qYZXOuLfMK8wfj4T09PXz8iSZIXA7+ZAvhiuxabMlwkm+F4g5tbdd4czbfMGVB52WPbsTGIHMqKcC2+4ga/VysR+6s8BraSaOGCMA1aXS9o+dGxapiTxoTdzCoPY8ZXamNafWFWkfl276+NbqoMc0KZPNd9pRlwdUVynQqsLWuk2kaJ1fnyFNXMWliBNNr+jxlUKCc7cwddMykxiCQ4Byw==; 24:j8tZeMDRt721DIGJwZnDfHcAJTRjRqYj96KJo9nJqmTmQaEeasmnHEuRMtUCmBmYlxXrKRo2W8hogN+BVIDArsLghh6qiCuuIiIuqVpTyjA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB0899; 7:6jk0AhY6XUhmcnY7DND/r1CcPipCAsPycLASW7AEIgWIBqRnNkn9qEDWeqiF8sEchnrEWlnVzK+iMDNqmyyb/k2pBeEAYF4Awv/ZBGUb1ARh1hjFgQmK5TInD76Oc8kLh6v3ceVYudOKU6/b85I3Y4E0wGaS9y+0QCaHDtuWIK3R7r4Zwa1Y8E9nwG5mgQpzihop6MTl5hE6gdeWHdugb4eG8AegZa/74PGDsMgySA81C5R+4DHZB0D1VvfyzUR4mFxZBKJPX1GuxZPYyLamGsHkjpAwOwg+noRDppJl17amAkBKxMDKVKVDfxsKtr0vOKvle21I2Y+z+7jlGUNj9gfKcdb0UyKg0x5RT7MLqlGFWrUVhzTFRB7+5QgA7utA7be+BNS9MGL3e4T9/NhgYEowGOuU/7uDI9AVjusegGgmzdLmHedQUAFR4qH7wTS2q6VtK/vylzahRbSpUAeFhLeonZ8ycDcOAqnkOWfzxA034Y04i0bkfNwBIlY+T5BVCAt6rZy4YIHaPpZjTtu9nuYgm94Pt9XpgwWAgAr1qpASGx5mze8Sa8HGDoWdMH5gWW7zS+Tb8FIOT/ZXmQTYMikQ6kd7M+O36mabRN07+FWh70B+8Vl5j2jtV7jwpidmomkG5ZncvWkGm2qyMOX+sHM9nRbZXvyOepqCoRs+BlKZ+C4tmP7fWXGh5Ja9TMu/GVHo+34fQLUf5EnkWWuMXXt1+k36v/Z/5Q1hsVVXf2i8e2tKp57zO/q0C9UUyDQ5clM1rzkExsSV2kqPbXFa/IvIgGNBXxd5HYoE84DdD8Y= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jul 2017 11:23:29.4598 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0301MB0899 Subject: [dpdk-dev] [RFC PATCH 0/1] IPSec Inline and look aside crypto offload 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, 25 Jul 2017 11:23:31 -0000 Below is a counter proposal for the RFC sent by Boris. If we find some consensus, we can have implementation for this proposal in a few weeks. The proposal is largely inline with the thoughts from Declan with a few exceptions. Here we are proposing a security framework which can be used both by crypto drivers and the hw offloaded NIC to showcase the protocol offload support as well as inline ipsec in hw offloaded NIC. The placement of the rte_security.X can either be a separate library like lib/librte_security/ or it can be taken as an extension to the lib/librte_cryptodev/. The reason for placing this in the cryptodev is that we are referring to some crypto enums and the APIs look similar to that of cryptodev. Here we propose that the application may be able to configure either NIC or crypto PMD to perform IPSec and other security operations. This is configured using the API int rte_security_configure(uint16_t dev_id, char *dev_name); This API take dev_id and dev_name to identify which device needs to perform security operation. Once the device is enabled for Security operations, the application can create and initialize the session for the enabled device. struct rte_security_session * rte_security_session_create(struct rte_mempool *mempool); int rte_security_session_init(uint16_t dev_id, char *dev_name, struct rte_security_session *sess, struct rte_security_sess_conf *conf, struct rte_mempool *mempool); These two APIs are similar to the rte_cryptodev_sym_session_create and rte_cryptodev_sym_session_init respectively, except that rte_security_session_init takes device name also to identify between the NIC(IPSEC inline or full offload) or crypto(look aside protocol offload). These sessions can be cleared and freed with the APIs int rte_security_session_clear(uint8_t dev_id, char *dev_name, struct rte_security_session *sess); int rte_security_session_free(struct rte_security_session *sess); The details for various structures used are mentioned in the below patch. These are very similar to what Declan proposed with a few additions. This can be updated further for other security protocols like MACSec and DTLS Now, after the application configures the session using above APIs, it needs to attach the session with the crypto_op in case the session is configured for crypto look aside protocol offload. For IPSec inline/ full protocol offload using NIC, the mbuf ol_flags can be set as per the RFC suggested by Boris. Configuration path for both crypto and NIC can be illustrated as below Configuration Path Configuration Path for NIC for Crypto | | +--------|--------+ +--------|--------+ | Add/Remove | | Add/Remove | | IPsec SA | | IPSec SA | | | | | | | |--------|--------| +--------|--------+ | | +--------V--------+ | | Flow API | | +--------|--------+ | | | +--------V--------+ +--------V--------+ | | | | | NIC PMD | | Crypto PMD | | | | | +--------|--------+ +--------|--------+ | | +--------|--------+ +--------|--------+ | HW ACCELERATED | | HW Crypto | | NIC | | Protocol Aware | | | | Device | +--------|--------+ +--------|--------+ Now the application(ipsec-secgw) have 4 paths to decide for the data path. 1. Non-protocol offload (currently implemented) 2. IPSec inline(only crypto operations using NIC) 3. full protocol offload(crypto operations along with all the IPsec header and trailer processing using NIC) 4. look aside protocol offload(single-pass encryption and authentication with additional levels of protocol processing offload using crypto device) The application can decide using the below action types enum rte_security_session_action_type { RTE_SECURITY_SESS_ETH_INLINE_CRYPTO, /**< Crypto operations are performed by Network interface */ RTE_SECURITY_SESS_ETH_PROTO_OFFLOAD, /**< Crypto operations with protocol support are performed * by Network/ethernet device. */ RTE_SECURITY_SESS_CRYPTO_PROTO_OFFLOAD, /**< Crypto operations with protocol support are performed * by Crypto device. */ RTE_SECURITY_SESS_NONE /**< Non protocol offload. Application need to manage everything */ }; Egress Data Path For ETH_INLINE_CRYPTO For CRYPTO_PROTO_OFFLOAD | | +--------|--------+ +-----------|-----------+ | egress IPsec | | Plain packet from NIC | | | | | | | | +------V------+ | | +--------V--------+ | | | SABD lookup | | | | SA lookup | | | +------|------+ | | +--------|--------+ | | +------V------+ | | +--------V--------+ | | | Tunnel | | | | session attach | | | +------|------+ | | +--------|--------+ | +------------+ | +------V------+ | | +--------V--------+ | | Hw crypto | | | ESP | | | |Enqueue to crypto|------> Device | <--- Headers are added by the HW device. | | | | | | Device | | | | | +------|------+ | | +-----------------+ | +-----|------+ +--------V--------+ | +-----------------+ | | | | | Dequeue from |<-----------+ +--------V--------+ | | Crypto Device | | | L2 Stack | | +--------|--------+ | +--------|--------+ | +--------V--------+ | | | | L2 Stack | | +--------V--------+ | +--------|--------+ | | | +-----------|-----------+ | NIC PMD | | | | +-----------V-----------+ +--------|--------+ | NIC PMD | | | (packet sent out) | +--------|--------+ +-----------|-----------+ | HW ACCELERATED | | NIC | | | +--------|--------+ Ingress Data Path For ETH_INLINE_CRYPTO For CRYPTO_PROTO_OFFLOAD | | +--------|--------+ +-----------|-----------+ | Ingress ipsec | | Encap packet from NIC | | | | | | | | +------V------+ | | +--------V--------+ | | | HW ACC NIC | | | | SA lookup | | | +------|------+ | | +--------|--------+ | | +------V------+ | | +--------V--------+ | | |validate ESP | | | | session attach | | | +------|------+ | | +--------|--------+ | +------------+ | +------V------+ | | +--------V--------+ | | Hw crypto | | |Remove ESP | | | |Enqueue to crypto|------> Device | <--- Headers are removed by the HW device. | | and Tunnel | | | | Device | | | | | +------|------+ | | +-----------------+ | +-----|------+ +--------V--------+ | +-----------------+ | | | | | Dequeue from |<-----------+ +--------V----------+ | | Crypto Device | | |Plain packet to App| | +--------|--------+ | +--------|----------+ | +--------V--------+ | | |Plain packet to | | | | app | | | +-----------------+ | +-----------------------+ Akhil Goyal (1): RFC: rte_security: proposal lib/librte_security/rte_security.h | 405 +++++++++++++++++++++++++++++++++++++ 1 file changed, 405 insertions(+) create mode 100644 lib/librte_security/rte_security.h -- 2.9.3