From patchwork Wed Aug 2 19:00:50 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matan Azrad X-Patchwork-Id: 27395 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id CB7A72629; Wed, 2 Aug 2017 21:01:10 +0200 (CEST) Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0077.outbound.protection.outlook.com [104.47.0.77]) by dpdk.org (Postfix) with ESMTP id 4F51C206 for ; Wed, 2 Aug 2017 21:01:09 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=lsVAysDE7UXCJ2Jf+MpNJDT9lZdAFKdj7hr+lAKX1Bg=; b=bnWCcigwfpBhHbzmn/DVAUxoquV4xwnV3rNXLTBsu1mbLXoEKk5MUowR+/jptpXXtYuTBEBnXUB9PphGfYXOOLxvtx8IUwJXepG2zskP6jyk3nRaj5vyWlJnW6JC5j5T1xAlmWS4vU/DVZtywXBuqgHxzF4E9Io41S4qUgju6Qs= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=matan@mellanox.com; Received: from mellanox.com (37.142.13.130) by HE1PR0502MB3052.eurprd05.prod.outlook.com (2603:10a6:3:d9::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1304.22; Wed, 2 Aug 2017 19:01:06 +0000 From: Matan Azrad To: Adrien Mazarguil Cc: dev@dpdk.org Date: Wed, 2 Aug 2017 22:00:50 +0300 Message-Id: <1501700450-11847-1-git-send-email-matan@mellanox.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <20170801105037.GT19852@6wind.com> References: <20170801105037.GT19852@6wind.com> MIME-Version: 1.0 X-Originating-IP: [37.142.13.130] X-ClientProxiedBy: DB6PR0202CA0024.eurprd02.prod.outlook.com (2603:10a6:4:29::34) To HE1PR0502MB3052.eurprd05.prod.outlook.com (2603:10a6:3:d9::17) X-MS-Office365-Filtering-Correlation-Id: 59187503-fc64-4a86-854c-08d4d9d8d4bd X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:HE1PR0502MB3052; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0502MB3052; 3:0VMdq5dQBWFWcX93g4XFQYNn3enAEfUFPGm2mLUc/vApnY3e0wc64YhDxnTfCYci4eaiYuyt/BUwU20k6je3V3UeA8pSHbVp1AC/mT5unZjtlBWxI55Fybp4Z6F0fQTi40uQI3D6YY3/36b63xP6d6evB1cMP5tzsUqhyiSIgjRzdxfiwupk4HNWnNbkr2r+H2TVRGi0fZFyOGFl0eDtR93FQKou7kFKWnc8Uv4owVoD1uo6qIdlQADvIg9j7XlleqZKHxB/sUfbk+ZKCc6nnlwDl57FvMt5Ixj/P1fEWd9qjLxJBifDov/nYmNK146I5NLrJPdWDgnKGVb5GMVwhiWwavyeIaBwEJ5ddyP7Hh3Uy6JhPOteh2YdyvpWsRrLyTUSL0yM0sxNfFJmO0wMSYzJS5WkM0FKic3vAxSSO8Jim9VhhjWXsMNMOVY1H8SHLwz/4VCeyZZgOFARvn2MR1BfpY8xhnNo9927T7/yQvZCGq8sFTuFsO4R/1n2shnXL2sL6mAakQUNpxzOT7908QDlnBURg/cmQQj/QXOASgNPs4/kHy5fPu5Ogq23yrQ6OxoZVBHhqe+YP97GbteDvC2Bnmg8PS+IOQ5NI4W73uRtlcN/GH0Mpt6zX/4K3piGufpkB5FHkuyZKBujr0Z0X/TY+AHjnNeX3ex5WGf5fnKdg/YT1xFou0RgcvRgm3NB4Du6G9MiT06az9kOsQTSY+9RF5vGUkOANsB705w9ZpoeSNbru7gIFgOAomv+0/xSFh7in1oKwTpL8qLrRi/l82WYnua9zcCzlo4EGnKOUf3Dw/6wuehZVEt+n2U2cIRUPjrq369i2hG6M6jDTaP6qg== X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: HE1PR0502MB3052: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0502MB3052; 25:MVSFZC5R0/ApRo8daK1nTHeN8+iuUeIPouJYfrTf5kBMd4XcslQE78uHyx44tINcHW0/nyitIrboFh2+oC/wPh53TXl/L9u2vF5yWVqDclrwh4vzl4vS7ltEDVGiwz21ViB4eYa/x5V7otTcORAKcbC4haLUgbTRyEzHtBzyVrSRvMGfb7TJ+KI+keZ7L7sTyHQu6w0WK1ZQz7AYFG/ess4OR9yDWEOiv2jGjQruItKLFr1+8YJO0EXY9aOT1zs5Cu1FAes0d3PC5SNxzfGEk3x0UtH25HJVrCh4djZrcdYKumI74gF8jjXEJX+sz8SPRBAUvLyQ8CEUu7+Ryvu4lbZMvU3JXE2SaPp5RG7Ih4hjKZ4Atbcg7ZImCDP8zu+Ht6Yk+rmsCOanSY7u10zkJwMA55OcCVtmMjUVOCVsgBcPl9RJsRjiZIj96V+MIlCJKE1FUWeDevTE9cMkzm4aJ7cd9byWAzwOL4kRLdY0D0x7XvLnMTimcxE1HOHjFONO/dJZkWD7WqYex4ngevcbVDlS9S182xUWLvLrW3TORF2IoytV/If3i+UZJtqDHZ8Ub/k7MGMwkBOfCwUde7sMY9PI8u027FEvWFLpLEAtAMN3RZIbxKbZT69SM5R2/fNtnUKDRz9pjh6jD2dsZZ5hvbyblTiSpLUQExDzdw/bpiJRBpA5IV4EI3O5qdcVx/A8mDP5prHUNHc9bxN4IyCFhom0BJBABLPIX3Q/hlN4HJkw1bG2N9gxAvsg1FCjrgk1HE7RY0zbGQcFU7W8SCzXokC4jqtUmVvUW4NV5W8yR6uy1OyOVgaJgwechyPOOepY3TdN671C0RMa0jyH2MqXNQzjodoWWvu/vuhJmjzzw1JBA2BeI/e3KXGpCPzx5ToiWsjtaItZEl95yuTW+npggQxlB4Sy5e5uezsttDryzjI= X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-Microsoft-Exchange-Diagnostics: 1; HE1PR0502MB3052; 31:4/RENaUviu2IJJI9iFHtJFC9nYKEjzXF3RAFZEVLaJOSzjFIumsBfGSt+wvu6cHlPMcTSwEVnB/p5ipSckryMmn+PpnSvApaW2Zat25X6aPI6QwWcAGjnWDOo6zbm413yZc2b2eXXzKws8qZynP1AeSe07fzm6Co8Zcp5MaJPLl8VpY05XP3tbeJyva4LHdp8+k4Z5BwMIc2AhM7oIqVt2gSSz22KaJ5toKtr3XqpTYXYu4xYGpyE3WyLlkmddsxXKxoJ4SzTyOwIbaHM8KSvlt8RuwNRuInl3gRzOm2ac7b/tJx94p9fbhrXThmC4eBwteRfWPuWLVBZoADkANKC5b+49i8lOqFc4gszWNsGJYblYyrBlQd6MEpkN70SFmE85z6VusRrsg2OSkz9Tvq0c+oz2ExEHQ3+J6er3SyPHmr4o24WOaQSslNhxxdj1Xu++GezbCQGsvv5wGc/2oHHy1NnwWdI/G0WBHA3Pif1cxVJay+93zel4ZVy171Avn3N3QfNWaSFjuXRhFMDZB/caiwNLIuURMhGqlwWtkMzGkKNDttdXlmVfQLJlwF0hsxsfHtX6P3IpHjRs4ShXpbJFnTsOMZqbTMfnXAOkJx1AwiY6ukmJn6+7fTPo+/MwGaLuppmwiDGYHdvrcbwqvRkeU11JZh3g+hYojzi04mb5zNZDcJTFbks2HIz66G0HZRWzP9tKZ/XgTJjvdfMGmj/g== X-Microsoft-Exchange-Diagnostics: 1; HE1PR0502MB3052; 20:Sy4R4Pel8R4tr5Ylp+H5EuBr/G8gewY8Q4YRYKmihiBaOgIDBcLxb8j7jakP34v9TdpmSlKSW18LaCgiT8zmnolTZ/obxkfrNmt7fl19V/5l7aT16yihCd6jy5EwtO4n7GwM2COtJYj54EiJWTy5wrwCs7ArrvVq99Bdv1wiO8rgaVvL/yIgaQIDXpMCWIoyAaQ2cC6XStCS2vBJdbZ2mz0RzHVPV5tcXn7Uvt9dMg6Dj5OsIWUINOOrbeWfggXG8icQuvaGwUVLVWpAfcEcmxArcvdjDQWXBohwY251+SdoQf7iPYU/qIh3RIoWQZhqUqcsSV45XdFy5Y7gQAKWZPbxqwmWTw0x+AmALD9oVnjc/dSJZCHjUdn4B9oPU9lOcP2miGb4kc2minJXuBvZqvLrhgjZ1ySwpfKn/so9SR8dByEPnuNJeAFR9vaGvdwhmzV0yaRVtFnCg+qoJOtFv/FCWmyjfeILvmEed8EY11ZDfqWbVqKihnfoVAZl3jmI X-Exchange-Antispam-Report-Test: UriScan:(131327999870524)(788757137089); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(3002001)(100000703101)(100105400095)(6055026)(6041248)(20161123558100)(20161123560025)(20161123564025)(20161123555025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:HE1PR0502MB3052; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:HE1PR0502MB3052; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0502MB3052; 4:1JVAZiWaELOHCM8/2NWohynZvB2DDInYLA8CMtig?= vNgH0Rg07RtGfgobz+ZF8BQz1pr8BsQ7k2agN3ayBPaBRu+abglBmBIjGRDAfK9BoeECQhpOYUIToWSLVV125bvqAL1m56OEjELoq5qZWnNcgPRZsyp3w5Np1oibGZ++UbF+k+ws2+gveSqBQOyi/qR0H8SzLpW1Tu9CwZFYUSzbpVBo82eJoOFGUHCl3qrLTeIP63xJVjRdDjhCBkFyoP3eJTulOZfInO50wZGLbuwhYbpVBR1gUOU25IsXV3L5bRRTIlcImjAwF1InjRuhOGu4wAsZ1nZbtuUp0imKaconFuBMkEcpxy7HaDg/rIFUl2YKHNqhsiZFcR+wsANSxXF413+Bj/NTjbikt9Ldqwz9Elyh2SbuwhuMllKjsF0QtGfv+pLbO2ewpC01sTRGXvCXk67ycKel7kmZ/RF9jFQeIo46rWOtKpOw0XeXeYohPKnjcr3woXOz0SekplSGkyWk52tZ6/Dlg/6MkG4YactKL2tQYmqDosAjIU1/Uh6tRjy8b8UPU3n+RgNsNBb4c+ml437+4Cv1RGaIeZRaBso2tIOOP0PN2tu5/Eh0G02XpyNUmDLHZMFtmV2Fj/M0nKZshyrglU8JQf9jahOMK85AvX86pztf+AQQqgwA1qZajYRBYjXFmdHdrhNArYjnmM//p6K81kuBzQrfJ32o+3wLEQ5dQ9ob02+CwXQmwatl9ZVqH3SMfI/Cw3ajYMgkz6OnYFbh154hYZ68Icz5lGqINvkzfo5iF+5a7aCJbP/T8C5S9A0N4dhxhoE+kFCaK3YcdXxNjn4bMvc1dIgDYNEdFA1Ua80NvEyB6VpqzLQzYE9yRbxtgf8Auhmx3Fh73v/k8RSpk4dSM33w6AKydo339nh5gfjQyQfMUXopBnwPKqqO6ruEzQoA7ebgUbPYi6j32JecsF2D9JbAYgXlwJBN4hgGC6KG8rlW9deTuo4RR4GhY3uBEbiZBwG9QSEGqkg7HQADo4Z6wQYBYO4TW9zK8hDT9vr81huk/1vXPUT0wczDxgjyHiGPfCFW7HH2Ju9ALCQloyc4WeKb+oKydPhL9DuoVkBOLus9P07Y64XHbyexov6zbveqemkzYKX+WUZwchoCh2D9r+v5IJ/kXmxLUdNAH2gpH3Esc6YkanVf0fr+9oyH4VHgB/EHI46hvkP0HjBrqh6mf1d5l3E/+Vaw9JVPtpfjUMqsiyMGy58/3nA= X-Forefront-PRVS: 0387D64A71 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(7370300001)(4630300001)(6009001)(39850400002)(39400400002)(39410400002)(39450400003)(39840400002)(52084003)(199003)(189002)(8676002)(48376002)(36756003)(105586002)(86362001)(575784001)(3846002)(101416001)(50466002)(81156014)(81166006)(2906002)(6116002)(4326008)(478600001)(55016002)(21086003)(7350300001)(50226002)(33026002)(305945005)(69596002)(5003940100001)(2950100002)(42186005)(7736002)(110136004)(38730400002)(53936002)(47776003)(68736007)(66066001)(76176999)(50986999)(33646002)(5660300001)(189998001)(106356001)(4720700003)(25786009)(6666003)(97736004)(6916009); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0502MB3052; H:mellanox.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0502MB3052; 23:dvnAdBNHhnLnwE4VZ2S9owoP9MB5OsGj3nd9BeB?= hKLn/54ifymCBkzkysQ+AE1kMh/tXoenoPG5JDARTP0YoJo6l1Sm4vVN4ZSTzRa3Ob2/yNj+wxQzHROAkc6LN5KIr68f+yccrcFbBgtISGQAAq88vPKo0m9KqAwOp/imB6XK4q098RCt6Pa7FbS6Gi1A6Vd2fXy9MCz/sXSqEo1DW0hft+K2XiUkwdI7IKATw8JitPUDI8xg+csLSn4MvYs4zqG3iiy92751Y+qn6MY8WFwBGxeKEl6DC10u1AqiRi8RE0kuQvOqo5GqNsHsIVZ4OjOyEyXaOiJ3CPjacIZSb1CqhFocen00Z0Xp8rxaU+fCRecTdemWtfjoci14Exv/YFSTXfVeaOUqA2X7Ft0iTox7ysBZeyjqsuwez6d1gTZw4ksc0CLndpSpl6n1Y+cto7neLei5mnOc+z5F9UFknGw4Q0UhxyFARR59EzkxF+hbu9mpvmG8h0RN7nVcXs2ocWyJfHkNav5Sgg54c3F4ylbN3OuThIppyNjQqaSNwiSdwfqqBchGWBWnDt+JQSsZGgMgk+KgH75YEMEWk7IcvJILCuzWl1q9LiEYEPJcXRwZ2rcoskWjKTdkeLbdk4cXa7NKifsEFL0RPy9ktptDowg7mgSfpqr9o3EqTSNAOUYLHRE3mjFWYoWgSgghtFKlWxamCDV/7RV+GzaLgTiJFMvEbi2H+72WmG2O5Ax/yye/9cqaCCNIH6htRjPxGQ+xJRwJDIUVOH6fSMOOHQHhQrLWz/6T1zrURN1vWg0eWG1hg8qZqLS2MLf/M/02AZiWo+sdRuIid1+fouHHDjprrIRq5h5qoq0T6eeXRl4XOSB7TF2FOOIyUGLOvAJ83ASMJdTnS/deak4sDinW/Wsf+oQgvDDx1CCxJyvpAJoyvXRXnSk7K7yOIC6R2lzblsi/42WtFiZIzED7tmV14d8RkY307WgRywy/er4Kk8vg3AwGtQM0loCsnLCPdN+pKtOb1rcAeTNO+Kdsta6wtn38OHlYf2K6Hv7Hqpy/nWaSHZuUD0HgPFR8gQI9xW277B1D+4ipg6xifRu/s38J4rXVLo20esBxKA7a8CB9WekduxgCIPQBowZpU8oNywxmPuGX+7cctfM25sjGNJ9TVyMOkkuvpWL3vVynqYXAWBhSwFaNPX/dmgQS2J/bIe2M9Yn9qBv4nsYqF9i4fDyWOEbxz8tYswtsY3en8PlFAYa53tdV1KMLil3xURnKEIUMgE3uGkTFfjniJFIeE9N0A2ZPYHKh96EPN8IUltnlnmQ/Soaw9KiXu8jsWFvRLoYNj+b4hM4FciFp/ZYU65FnzlV98vg== X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0502MB3052; 6:COaQgeUbSSco5aSoilfhureX94/3stkPflYWU6ze?= mbLpU/OK26BtOSfTci27ciSytjea6ljm2uzVgKxVAl7t5S23p3933D9KescUV92hoIR0LvZe12MjFd2HVuht0sgpxnxIKWqo2FY58O7/HKx6e3+VFGpaMalagyH4WGsw1GLdYwKP7gWV/rnM3SWbecf3/35czBmqXho88f6mNgnDTxxkPIRu6e7u5vxwx7ree8vTsAPlS5TKumb1nvZbwXsiJlrAamu7CryFrUYvVLHrYxLyNik7FAojB1j/tC5qAt5tDSPY5QGoHjatYsOVNgTwOD9sf0x+QerU3GFRBrHnRc2gGC2l+tcuYw6zQJASQHTno9xa6ahp0vKxU8KqUxaTku+PSm1PWjeTFAWHb+SaCafLfeQ2LWqubN2sX25hevk2aO7JWk9r9VY6U98kFX4aNO9PCZvioQvUNGQopx2DGaCayIEnh/auZQe7oM9Gjq3TFGuXhfUN21OfHu+/Kt9Di6w6imMvGzxTyl3Slx1H9T4jtj8fauFVserRPSzb0D+sK9NpfwfaQvtwB9oo4L/OqNTWmVAjE9OhF6eLfhlGH2b+rmh8vaT6sgRQQF4D0+kT1i2pP8bpgEWsxLj6sPpwPKQ9pRfD0RI3cfjO+4tRKk46mbqd+i5Okw2QmeTGh+fRXofqwcd8VGcrXqdlcC+aBzVcGyRntVpoatvpm7PFKSXnhvVEctxEySdfYgPkBY2Ut7MXhyycFBqLdyCi6IouhBavCu0L1pJ2tzyBo6dkg8MrYAeQtFNFqhUgz28H8zGYcTdWwfoRe/fwLUy2BHsSUNzYrt8zaYjGaIE87EyFnrSrWQrce99uqFHBHgDYX1LobapiCSLl1I9SlYoaThYUZoTH+ZXOrQ3pyCd8z8ap8yvqByS3i8Lxxr/OaZRZAkYw+mPzsG6/TcUSM9j7jdGDYkgi7xMV/qm9OPDKVnz+UPv5Fssf/teuwjZscnYDGGcl1XPzV+Ft3si+tj3MUv21 X-Microsoft-Exchange-Diagnostics: 1; HE1PR0502MB3052; 5:OTv3QGRmI4FbFn/6tlLRrzEuFtOyauI24voIl3gaiHMz9hRmKJ2GYZwKTe2P6DrMXYlAggbYATEBFk64B4WAUgUZmRMefIXx7nbMFGFXodfGhpsc8cb3at+RDGBSY9ezCSavszzP9ssz2jJ+vY+64XI7414QlfhcHwmgUVN5gHaMq2lqJYYj4NHJYq3EUnU717gaxFssJESVVaPNu5yBYdK8d7vk9B2+NRrCcwROCiNnDdU34B2V2MEmBPIspfYZoUYpe2/c19T34gIS05PfMq5pO+wPaNN0NzK3fYoJf5rBkA8NwP+ubU0TiEA7PZEzIoBrHBv8OsU7ro9XX0Wy4JQ72AcxVT4BinSp5Oye/N/FNiB7TBmJabxNRw9l8mZJbKeln2S0KrNPVSD5sX9ZKIE9DkLo+c5uhJ85UuZ3ux6uSBazayubos9oxMov8TkpWcTHS0Lsi5BLvNAsdTImnyenH/cKf8C76JLLCTCFenUXo2FSi64fv+fF6KdPKi4n; 24:9Mn8pWWVxE4POsNsOb0fDnL4avnZIgCEZiAPPo5urdSW+tkmyJsWja4A4OIzQfFlptjTTH+NshFnv9izUxFUAZBrcggF19qxImetyQU8xy8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0502MB3052; 7:36H9aq3sngg9EVEF9Sr0YeUu5bn7VPY7G+Cjog13W872MUxQ158ueH6pP+/PA8tK1PMl0E3zHIoWJUrxdcfoA8B4mh1aiaIjD7bvttrdDQ2o3mPJDEpoKD/iURQzpRL3kfpPJ1bQCLW4GdnQ7frrL43crpslxmUU2qNMSF93yiF0OLeWXzO2Dx/QZirrvzuG0hqFpU7R09NlnlZeWIxCkGqLqOpOlxXLnEulA+znynEAqs3bysrHvz0KNFBe4OmxdKIxzuc1+MFVKQf2IGR0EsQKty5YFWBJHXzTuaNCHlVTrghk0d5gMFumSnkhUO0I4A61mXsshrRJseenAZWr3PYFa0IDAZkAtG/X9gXyHJhIwTvJ367heqxN6/PBlBH6mIcsroiPFKEWThtzV1ATFHXViz51jZ2Z1upZL6amKZx51hq8AH0CmwmKfV3znHS8Jx/cLurQxBLDpuLHRnXM89G/bWvTan1vL3r73J1Bo3lZaSEPD3nVh3PBivUb7atmLdnXRcoZufbXWnaMzjMDIOyggcUtRgtVkxFr4STBBJAPKBN4Btdhb/A/dg6FOnqgdMHgMsOlLpwBd9ALTvAUeJVBHRlXSgTpNlWepc473RWmnoAaEoILwZhjAvQbb4CDXaDdHYqmjUAtPsjRbtCbqhsXf6EC5LlHIC4L4lJmxPAO70pT3te+QOIiEKU64KnoXjtUoqULF8XWFO6O6OmgF+pGaP1AJdY34SMjSUB1uFNZ668HhN21f3X7BR7ZnZihT89/G/OUIOpF5o9Djf2/P3RwnC9WC1ShyrwayZkvYgU= X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2017 19:01:06.4717 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0502MB3052 Subject: [dpdk-dev] [PATCH v2] net/mlx4: workaround to verbs wrong error return 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Current mlx4 OFED version has bug which returns error to ibv destroy functions when the device was plugged out, in spite of the resources were destroyed correctly. Hence, failsafe PMD was aborted, only in debug mode, when it tries to remove the device in plug-out process. The workaround added option to replace all claim_zero assertions with debugging messages, by the way, this option affects non ibv destroy assertions. DPDK 18.02 release should work with Mellanox OFED-4.2 which will include the verbs fix to this bug, then, this patch can be removed. Signed-off-by: Matan Azrad Acked-by: Adrien Mazarguil --- config/common_base | 1 + doc/guides/nics/mlx4.rst | 8 ++++++++ drivers/net/mlx4/Makefile | 4 ++++ drivers/net/mlx4/mlx4.h | 6 ++++++ 4 files changed, 19 insertions(+) This v2 is not perfect but satisfy. diff --git a/config/common_base b/config/common_base index 7805605..5e97a08 100644 --- a/config/common_base +++ b/config/common_base @@ -213,6 +213,7 @@ CONFIG_RTE_LIBRTE_FM10K_INC_VECTOR=y # CONFIG_RTE_LIBRTE_MLX4_PMD=n CONFIG_RTE_LIBRTE_MLX4_DEBUG=n +CONFIG_RTE_LIBRTE_MLX4_DEBUG_BROKEN_VERBS=n CONFIG_RTE_LIBRTE_MLX4_SGE_WR_N=4 CONFIG_RTE_LIBRTE_MLX4_MAX_INLINE=0 CONFIG_RTE_LIBRTE_MLX4_TX_MP_CACHE=8 diff --git a/doc/guides/nics/mlx4.rst b/doc/guides/nics/mlx4.rst index d5bf2b3..f8885b2 100644 --- a/doc/guides/nics/mlx4.rst +++ b/doc/guides/nics/mlx4.rst @@ -119,6 +119,14 @@ These options can be modified in the ``.config`` file. adds additional run-time checks and debugging messages at the cost of lower performance. +- ``CONFIG_RTE_LIBRTE_MLX4_DEBUG_BROKEN_VERBS`` (default **n**) + + Mellanox OFED versions earlier than 4.2 may return false errors from + Verbs object destruction APIs after the device is plugged out. + Enabling this option replaces assertion checks that cause the program + to abort with harmless debugging messages as a workaround. + Relevant only when CONFIG_RTE_LIBRTE_MLX4_DEBUG is enabled. + - ``CONFIG_RTE_LIBRTE_MLX4_SGE_WR_N`` (default **4**) Number of scatter/gather elements (SGEs) per work request (WR). Lowering diff --git a/drivers/net/mlx4/Makefile b/drivers/net/mlx4/Makefile index 755c8a4..c045bd7 100644 --- a/drivers/net/mlx4/Makefile +++ b/drivers/net/mlx4/Makefile @@ -84,6 +84,10 @@ ifdef CONFIG_RTE_LIBRTE_MLX4_SOFT_COUNTERS CFLAGS += -DMLX4_PMD_SOFT_COUNTERS=$(CONFIG_RTE_LIBRTE_MLX4_SOFT_COUNTERS) endif +ifeq ($(CONFIG_RTE_LIBRTE_MLX4_DEBUG_BROKEN_VERBS),y) +CFLAGS += -DMLX4_PMD_DEBUG_BROKEN_VERBS +endif + include $(RTE_SDK)/mk/rte.lib.mk # Generate and clean-up mlx4_autoconf.h. diff --git a/drivers/net/mlx4/mlx4.h b/drivers/net/mlx4/mlx4.h index a2e0ae7..c0ade4f 100644 --- a/drivers/net/mlx4/mlx4.h +++ b/drivers/net/mlx4/mlx4.h @@ -182,7 +182,13 @@ enum { (DEBUG__(__VA_ARGS__), 0) \ })[0]) #define DEBUG(...) DEBUG_(__VA_ARGS__, '\n') +#ifndef MLX4_PMD_DEBUG_BROKEN_VERBS #define claim_zero(...) assert((__VA_ARGS__) == 0) +#else /* MLX4_PMD_DEBUG_BROKEN_VERBS */ +#define claim_zero(...) \ + (void)(((__VA_ARGS__) == 0) || \ + DEBUG("Assertion `(" # __VA_ARGS__ ") == 0' failed (IGNORED).")) +#endif /* MLX4_PMD_DEBUG_BROKEN_VERBS */ #define claim_nonzero(...) assert((__VA_ARGS__) != 0) #define claim_positive(...) assert((__VA_ARGS__) >= 0) #else /* NDEBUG */