From patchwork Fri Jul 7 13:32:18 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 107196 Delivered-To: patch@linaro.org Received: by 10.182.72.42 with SMTP id a10csp91766obv; Fri, 7 Jul 2017 06:33:39 -0700 (PDT) X-Received: by 10.237.55.105 with SMTP id i96mr42298685qtb.139.1499434419818; Fri, 07 Jul 2017 06:33:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1499434419; cv=none; d=google.com; s=arc-20160816; b=vl3/NgVT+ewiX5VRQSdCm+IJFTpEdJYHKXqUZt/Umb7ee+pNvhfK5C4V3Z7OLIMjPt bV/HO4g+lqOkfxNGwExRbZkiI5pLETxbXAWqW3HnZONb2NT7Wzz6BGdFGt7TdCI892sD I2F3xjepZAd9r338Y9p2+tJbS5ZcciQ1n3L/gEpooaJ/KDHRkk5f/j+TfY3K815QCK1Q YpxBgPAHq96yJ38L4iJ9v0V+sCD+uy3OX5Zu55bqIcH420bZuC3P/2k0NTGjYDPEGcNZ Efc2YhXPqrMpuyZ4ThneKRRcyDn0lZjZ416go4SUNsOo26VQRWgr24IXBNA5e/ko4Xqm SiRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:spamdiagnosticmetadata :spamdiagnosticoutput:mime-version:references:in-reply-to:message-id :date:to:from:delivered-to:arc-authentication-results; bh=GfGGHEcMtLgxR17FVpZ5vGJrYeYBsBEo6GoVFYQaXxE=; b=jRX1YsHzobI8xYvbPOBnqVCNS9dHMes0TGDleUSFwgW731wOXOucbccN8kIsouGvg1 zEpIew2qkcRFfw4K5IwqKjkIkG9RMbowf7Hi1WLZtHmhhNnEfsYSnEWkNkD+uIynAhxi CG5+dlBflzUKa9is8IclQcm6W9FAd4Km8k26tFrgaUTapsiCpoev8DLheLk0G9VVcTdf 84/tHXJy8PVEkfiM4upIxcTz8O/cFfgEfE+BrLiWbzCABfJOVsyG0ZM0YpfD/8LX4jxl ZOmhUFXjIeNrUKpbaL2OJP3gLRpU4vhTnfpThfgK7h9qDsvzDttfz/a7GdTCllxXgE0d ePxg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id x128si3139547qke.211.2017.07.07.06.33.39; Fri, 07 Jul 2017 06:33:39 -0700 (PDT) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id 8660160CE8; Fri, 7 Jul 2017 13:33:39 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H5, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id 4DF3660BFE; Fri, 7 Jul 2017 13:33:31 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id E5F3660BFF; Fri, 7 Jul 2017 13:33:26 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0135.outbound.protection.outlook.com [104.47.2.135]) by lists.linaro.org (Postfix) with ESMTPS id 8CEA060C8B for ; Fri, 7 Jul 2017 13:32:54 +0000 (UTC) Received: from VI1PR07CA0075.eurprd07.prod.outlook.com (2a01:111:e400:5967::43) by AM2PR07MB1042.eurprd07.prod.outlook.com (2a01:111:e400:8444::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1240.6; Fri, 7 Jul 2017 13:32:53 +0000 Received: from VE1EUR03FT064.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e09::209) by VI1PR07CA0075.outlook.office365.com (2a01:111:e400:5967::43) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1261.4 via Frontend Transport; Fri, 7 Jul 2017 13:32:52 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.240 as permitted sender) Received: from mailrelay.int.nokia.com (131.228.2.240) by VE1EUR03FT064.mail.protection.outlook.com (10.152.19.210) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.1220.9 via Frontend Transport; Fri, 7 Jul 2017 13:32:52 +0000 Received: from fihe3nok0734.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v67DWK8Q007684 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 7 Jul 2017 16:32:20 +0300 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v67DWKBW007667 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Fri, 7 Jul 2017 16:32:20 +0300 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Fri, 7 Jul 2017 16:32:18 +0300 Message-ID: <20170707133219.1611-3-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.13.0 In-Reply-To: <20170707133219.1611-1-petri.savolainen@linaro.org> References: <20170707133219.1611-1-petri.savolainen@linaro.org> X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.240; IPV:CAL; SCL:-1; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(39410400002)(39400400002)(39860400002)(39840400002)(39850400002)(39450400003)(2980300002)(189002)(199003)(9170700003)(5660300001)(47776003)(626005)(76176999)(305945005)(2351001)(50986999)(105596002)(53936002)(33646002)(38730400002)(2950100002)(6916009)(110136004)(86362001)(498600001)(2906002)(106466001)(77096006)(8936002)(5003940100001)(356003)(1076002)(50466002)(50226002)(36756003)(81166006)(8676002)(189998001)(22756006)(48376002); DIR:OUT; SFP:1102; SCL:1; SRVR:AM2PR07MB1042; H:mailrelay.int.nokia.com; FPR:; SPF:SoftFail; MLV:sfv; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT064; 1:FW0ju2IqEuQPf6UkvEiHZzkFkiVnV3MTy8B9VjwHNhjVuqvFx6KR5wclz3cQSRNJdoZnfS9IvCUQMUWOc12FAdmLFppdDGQVM3XZlOcPtY/N95AAYEVhGzG00mqtmcG/52r89BwQqzB9oHAjCfBW2o8uj3POcKkVGsor6GSXRPQLb51/m20YmycY9Qf9OITKgYj/HW0UIxlBr2IrCl8m+eBFtbYlhFb1YsoBX4k9rRW+2lKTotmTDr5m6EFquRdOK6LtQ+q3itLUJCO27cqzVtdo8FkHjCNxbhiSSrn5LrF21qG8+fW6SaTlirDaYXQlnuo9nHbpNweInpYR9UNZnMPzI6qZOGV46mVczSNwWbX6z6m8gBvGKMX0f9jgwZuRhNOGWROv/VR0k7q6NGUrxHYy8V2M3S6pRb0eIaq0rm5YicJ6SzTE59awoih7MZhA4uFIvNyKtpHdkcquW2tQ1WBBvx4PmYS6tYUrm3tZkHu9Qv+NzqS3x6r7A4FBfsdcw5/8w1VKk8u4Tgqyn2XDCNfhbTbv9PixZoRzmh7OEnDL8rGO0let6bLRzudHr0/JXJ5BYwggM5MgQa3p3pEYdWrefW1DSNLm82jsAJOPoUGzGJDrHe43XxnLw/xS1D6bouFaPx5w/cBbPwcxM0rZ5H7HBI1555StnM4NAxKc1+F6IqJS9NNrrDq7IzNrJvQziA9IoDobNGlMx0adBO6smZStFg7GLokFqXrbT262cYmXMJNnG444KryST7UHOIbja3m/GzKkSzWcc90RpF5gikAd25MoxwKnXFcnRjRl2yVYG6PBKb0wKrE7o1afez5LN7j1V5AOuf84ikecOwdiVw== MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7a8b8b08-2a85-4f7a-f2e2-08d4c53cab17 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254075)(300000503095)(300135400095)(2017052603031)(201703131423075)(201703031133081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:AM2PR07MB1042; X-Microsoft-Exchange-Diagnostics: 1; AM2PR07MB1042; 3:592XHsqNpC4ErOOrtW7IyA/A+3xlyAr5pVTMVZ6Mp5hEEqLdIpk4kYBwohR+nW5EQTvjIDe5rWTcBk8cc7tJDSXMCgGVTRDV3Zg/qmim0ca3GKj542DnQwJ+mJ6JujZHr9vEDVVsw6CT8abuoeT/Ucrgj5BImW92447/lyEuImPm/T1mO+KiU1JnfldW9Ia/lA14v/LhIhS1OXl8uK9vMP301bjKvECG3IB4oaMh5BPn2Q22c7ZqhN2QxUCHhcjKQ6HLMa50hQogxQYV+Vfi4UNvW1xdbijNe1QodvlL62bbXaZ0h7e+u7Pc0+eg8bhtwz/i/ak2FWCUbDfr8OKayix3WqqW60TQNtU+w4XWel+H5Q2AKd8+luC46xjibYeUPVgOGtvTDFahAIQfp0LF8xUAw+lA5pM6edqGYgzkvMdBuOtEowZUccw3Bl0s1ezKtihfD4VFL/WiQtSbrW7zusicOSw2ALH5QXmnLZ85/PjQtAvK793ZcqdiOHzKzAUnk8JOama+0oq9KS+Dj7hRxfNkuCp+rTXe3eTKQuUaPh4kNs1qWIP06fjHo1em1UFG5Iq7yP3TLcs3NKKbuuiu7dgj2+Y4tN4TX1Zu8YUvWKNDWSMvVSIysAPMVHiMMnE7tnZcUqPOfJPHZ9Kfu7G6vC+7njsEVWxGFsepeQjBQ40AkdzpnNob+Qhtvq7Yjg37elV/uDWaNmVqXULF2IjlovvV8ndDOXTUA+yJnqrVYsaPGRNNFLi8DVEpwhBQYDgqufw9/WdCfaM3k183IUhatKlu8dzaYcu65tI2ZtjAs8voUtakappqVvhzfzGPz9VuZjeg3rxHfVQH9cy/C3WrfWqkUWh1dcmudmxt4x7CGBEWS7wgZ1XOIfJCLwnI4sFp/syMt/AHrPfw0jSwxPz4Pg== X-MS-TrafficTypeDiagnostic: AM2PR07MB1042: X-Microsoft-Exchange-Diagnostics: 1; AM2PR07MB1042; 25:xeI8gj6inMicinN1UBxa9OhtQtO0XuPwRLrrigIOpqpw24+ZnDcJIzO3aMimnYcLtqShwRvZxp9ts1nabjXTaaw5EmPdinVep/aWm+bVi1zqkaE3KLuQw1+miRYW/oPcUt5XpywZmGf8Bj6F5kXHUI+Tt0BB0guRuoENos0V0SCUC3zMfIaKc7c/sdz1sOT/fL/PqQaZXg8kImDwThw0EQ3EHczLiJ5M8h2QGU6V5DWHgs+h86byotaZ2zIC3AUu0txgqdBTsixdoG+O8ZANaW/gDw2XI1NpxX8D4jSDKVj62vrqnoeb6Ny/vRAJukoyBh7QjzLALGNnhb/VWT5Vklj5/zlT1zrtR7rPet7kaAXmDoGCRbDFdwtyDJrLMIHHJWdVMtqWrz+ot/b8BRUqNKsP3NpTbwTvvSb1dNBTUHyu0eJ+AozrN9hjyGNpvU3pcGVQVU8Nf9YbYTzV3zkg9Oi2F+2/hGradbealSUJFNbP1/JszKi7BjHew4NbPCH01Yv2V+LDNsEvhoWgx7ovRbbkHr78RBb1vvy6sodEKztbmmUTjAkatXKYnUSuz6enHmycKsmthzA6b05SW9czJNIL+RE1ahnui7ejx4DcV3k53CxHN/BA69lgOhPbYB7SyvsWj/Il6dK4a4qgB+uvwe8WcGfATBiZIlI443C+ouWrvm1rdFclgK64eHdKzl0n2IlnAY43huCY12U+RSJlaQZCkfSfp4Tobm088LXlb1NacMkewWmWrCWb0Eh8RKBUyEEVHmVj3tNQx8UOIC9PzqN9oI2g77BSkXxTez682V2kzgzo9UwFrlbU2Xj1rw/mu9rU8qxf6LqjiYaz9jV3TfKXVdVfiJs77BDd00AE2EmpTdYw7/Lvt8/p8MfYMi+/DuWjc4gvtTB0kKgtj+iPTFCqPpqDgZt1Adjx4MReees= X-Microsoft-Exchange-Diagnostics: 1; AM2PR07MB1042; 31:ggWRT38wwlke2pCWMWVegvuM5TMdnatkt6KbollMShAnrJWgk/tSHlXm4VL5AoBFbbeLZdiu8Tib2UFS4s292/BYQcVgENZk/V1yCT17AeA9ek9pIT2K2D2mTm66G4je3y0EXEQ8Cg0arDmirHw9fI6WfSXUppEG2OH87Ax0MTXoNpBH9utjgyeEuJSvIUmjVp28ESj5Cc5AO7h7xC6oG/7jm49SdeutxHZwfwpj5qp//o+JZr8FgJ0ci2WRViRQ8oM6H9vH2luGL/WmHL4Jo5A5Q0lAl1EIQTwmKXhQ9TjvkSLwFTgYNLdUNj1WLEomyXVr44bWrRKG0DsV/TPnISrOM4CPqIIxcwb5VhCf///c7gVgllSZ1WX8ynZrR58syXdg+X1sOeeTfx1ol63cv2WFF9BgIQbJDaLcnIMWIC1NXD0tElpXtbz9epKLeqI0ynqy6kAr5jYNvMWNE2REoueuTuC6oxC4hp77VheU4b9vXgQkqkNmYfxqXo/iUt648MnY40hsDN0NOl8v2YNCp9sTJvvqFA6YZF4XUgYe+C8QYWfMMLoXbl9ZlVADbwKwEoF1nmhyYyZmOiU6JhNVQYMq+dL1a1Ttdf/+GUQkWYFzZcwIoXtCekgoy13TH475i54C/wTC5/SPsD2YmTITPopc46b/8qeiCUs/ukTyuLc1UXi6p8LkJ9UQjXnouJ2KLth2e5l+lWTgrj7Ryn8zkA== X-Microsoft-Exchange-Diagnostics: 1; AM2PR07MB1042; 20:14g77k4wmydal5y16nM/Wl3zVOpDH57u07jW5LgwTy62smHkuJI3hM+keTRA57/nBIzLqyqiLuFqwI9VC6hJYONKh59GHFcC1HSdooGLATeTWtohFNt9IQ8t+IHge1qCwcIoF+y5NaOlVaVSxVo+R/yrvUfEqahRzjyCAKBX8TykUmKE7eFiuLR/Z87C6GQgUOZSXWeELi/aTGxUrASxYvlR306dfPlVDmD6px1m/c5wOtnGnmWhvOso4zboXNsG9fnXvWxnfzFDitSDFMlcpzieE++F1dbb6mijY6nXYjSKJaTnezwQ/MUl60+cIFv/wGu8m6hDCz4e3emAhu9l0YRmRFM0uCdTEeZgiydibVCuZES3oSbt+nNdMRpsVMJnG+Kpg32RGuBYzZdacJtDXvFa28Xczk2gm229QSRiw1K3SwyLBr4f2c4EpPzWlxtiRAodzyO+u47685oKav6+XY1mdJlptJ79uZRSSSHamt6l41ntAGmDWHCdcyFQBQ9zIyP14HoSqqWDza81MzxrfRAe1rHxleLkQUr9REMrjlaW/cH8FwHhl3V15OuKiXM5SxsLALFJeDqW4yOxoqSzUb0uezA/+eOFA156i9bIojA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(13013025)(13021025)(100000703101)(100105400095)(93006095)(93003095)(10201501046)(3002001)(6055026)(6041248)(20161123555025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061750153)(20161123564025)(20161123560025)(20161123558100)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:AM2PR07MB1042; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:AM2PR07MB1042; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM2PR07MB1042; 4:aRnL1YPUhD7H2aIrGEAB/n6/Vf5ucse7VDbDkFOZNg?= Ju8WFbiMh0eQG8KNy0l7MyWo34pK+48dKD9/1Xrr0B6utn9Q7CcjH7SOnHTclBzxBul7QQLCvTQrXRvEFec4yvIOcIkJMr9xsu+yMEFBzeSKqiwXgKQftJuiW37CB5iqZW/VWKomJu5TPGsDYtaOey1PhzQuNO/jWIQBTOEQnp0gilOMdxuJ0SjyeNLug0/QUzBVW0QC+yfTdEF1jN1E+z+BjYQlgD1F47eM75VT9Vb+OB+NAeVu5otYlLMK7VkN5q6rWhE2RQ18RdnX19kn0xn0x74hBhlhj4BpG3fGxHPjWq3GSnupHcxhFXBBdCQL14jMQ2ETgeisTGh9Y0O3wD4l2OyDbTsovlt6Hy6bGfl1rNaVCrKT0pZ9zo55MM+UTSelnf1nW3AWbII+VmCTzOAItWsdBr7Wkjgg/eom3d8RwDl0tNJCOWhQkkyskbnec4R/wqwJyMEuPfwtiitSBXn2PhbrKQeFUy8oh+W/grg9HPo0NYqErcg6nxioRWAnfhKTWM5PePtj4Rr+8pDTLugbvp3ZYlptwfJUiwS3Pf+caNfHPUg3qTL18kiZRGyOwfD4sue4kJNnGl5/uarV4r0mdYuPPN9ZUb5EQBVZZQ1VSkGdadIulO19HEfGnkIMocOKL4w7gmDuNzrgeKoTe8o4Zh1pevgR3OQn4RMotPeS3mpHX3UPaPJ+LnJEGByX9Huc05bJIwTS+tzdWAGZZMrjieao0y8oQDbJyAYZcA0YLcqM+ubxIug7IChgu8dVFqXDh1sGnNTG5NZXv9tanBcutqTE83fqT6VB2CTH1o3DaBqlG6dLA3QE1D0hbONtupgyj0BS/QxC3aGnuLpaHUZK+uI7v/+NNA5R2obXlEBDBAgzoD1scmU9jrQO3DDYQ189Lu527GoKCfvZ+bSWodcF/e7uQG80lRCvgyQBue4lo8cSNTgs8esiqL4db+mNB5Mq1q1UJ22Ubm2P17wMx/VDx8JfdAX8P2Q7QZKVjDBAXOTPfliN3DbG2NJnKjk2yM9pRK89vyQ0MlBv4XR+fbVwUzQBEb3/JDLUgL5FAN2YEBHuluWKiCBu8AAI+1dheV0uv7vWWEycL/yQC5OfeTxwAvv/87CUUmbvBrdb/r54blevmS1IgKeUmEOXtPPHe8hv9zyEmKhVwQgrNvNqby X-Forefront-PRVS: 0361212EA8 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM2PR07MB1042; 23:p/B3BBgndOAsKBB/QzYAmiJU2G3t6aw/sLf6OLjFf?= wJtvlWZFeEjD5DuY9dtu5XmSTC2qUfc7nNMQB8NhusqO7AkVfwDQqxl4FQ3J1sfDn+nifOhk7Czr3HhglsurwOXrCJz9oreyGDgf286tS4MKpnR+XLIz3ZXc/yJ3QoZO4+qO+yy33NR4cJxyewxgOQWhpIUHdf0WH+c9ZmI7HJKjLgXlgI1egR2T+majloq0VWVNCTRrKmtoL1h4lBTT8jq17dfMMeySU6WrQUu9LJ9TrNKx5t28ZGF26lHyEg3X8jnt7NsBpCM55bpm7syVHpSTR7QRnrGVwTwO7kxkUxFbgz7RNZrSrcc5H1vH96lexQfQXu5yPPQ8YQFBJiFV+8EZHKcBhxncHn6vnlH7elZ4vFa72mOmmMtl1Q7lAwO8xiWwv8574o952QrX15Q/jHrIx0yak8+xyabZTxjZJUZOyMRhKjqd8Ts0s++LRZxZn0DvQOy5xiZ5R6m+ZM+TE1fviauyLdG/y3La67k/aVAZQHsK8mrW8zEfDBvkR4EpOVIFTfiUW7StQ0dlfyV3tVM/jCHSbMW+fVQw98Mc1p6wkSaJr0/lvHCeiOvzZTHvKrV5MNj7aDoFpXXVKfzGNf0Uzz39NAQuCUjf84V8vhzEtrDZI1WpwbUyK9S0eb9i0ypjBBu6bf/IJqF30UuGiZ8Ok0dS6PW4ISvPFZszSAJGNe4F7Sx29qr/e2RCqVB9PkLrcUhafJTQaG+MQ1GrdpukM57XHmBLnpuM/72lqh4v7v3bUKAsM5q7Wgw19Ce7D6QYvI1591j8c8qDQYHeqi60BtECGOVxe8w+0sLozcz4R08Z2v6YIaIBwir1xH1Fos+Aqt0mFM6ulUqD7nWyu1aTI+8BDkMw1mvGUJaQ3lEI98DoFk6rjM8ksnYTeuiU9+asWDdUSlibukERiwfrscOZOw7DTborBiUvMFm+WNGPWOlXhLRnlGVJ3cndsjRKFsl3Y6LRwQEGjPDwKt8pveJMvtTMBkSElLjHYsy4Jmjb7haXLwVyudRoyfntApasS25Mt8GLmWn36NhBNVGzG6I X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM2PR07MB1042; 6:cmOBCC6Yq/WStp43UZdKtDx0DQlmaEgzz/EzrseMHq?= xKjKUS9SKjDVmy1rHByuxzt2q3M53PCnNkRoL2f6CrTRrdCDQ0DfLmc1Q4kiNmyRgOTqwdsCMGVpfeYNUMyRSNyqybryHx21UCGgzjhbmkS3PXdUTnnbkKWK47C2MMAaUZlEnZkLWWrEPS3Y43WkwBWZGsEDWtzExG8d8QXrcCb0VLHKcRE0z2m1G/FNqEHwIKa8MJpSUyM0yGECUMfLttKITzwOoNuu+2cFUNB/NHVfZiSJXM2QseZqNBiyksXRYyUV/MXyh3HnZR8cFbe4NpBVcXSbtKShKcT4QjKZa8NcdYZe7hq7Ro3odz6Jg3eEedQ/1xOCjm4a09wH4giULqOyfFrou/3zyTWYHFy7679YVJeuQq6q0EpfnHnFmSEDd9b6xwZxoRgKQSvBHZFl6VkF9WB0ETX80n9Lch4COsw4NzwRZjGvxN7pk8FX3eN2V25ME0x9nH7wiD5idIIlV3MJ+aXaACE6nfe87VnQruAAQo5I7qU+X+uSV2j5IIkXMj/GH0SdXUp2CmDBaiYBXQ5xcVRJA0mBSwKkLL6RGuoPAI+NTu5nTklqFg8okShyMN4MdonJg96yeGbYOYDQxUhYAxvC4Dnt4TQkGVOl+JXZvVk0Q/KRsSMTV+aJgZARk9KgfzIfRoeHHwipFpaywxldDWpBkl8cebv51hR8OA1tTAR6FX5JQUH9QQUjsOTzIIluQGB8BQ+3BGbfzCmCgrLgGYzSMbnsH2l25a8xLMRT8YWnuLncgNbFYJeuxf4kL0wcGkgyU0Iya4VjtolP8tHtowg2PErNPuTqcFQhe1CUKgxNi5vKef8kjNCY27KbUWGJmyis7t6kZKOxz+coSWWP2jPskpg8adSRSkyhFrrZ3d/O/uMrODTluXMlL+3V6JYS7uTY5JPKJvUwXF+L15+Fr+6GUU2l0e71kcFqf5smkrWW9w2pLNN2Q7zfiKNw6VJ2UTE54aIbV2R56FZl38 X-Microsoft-Exchange-Diagnostics: 1; AM2PR07MB1042; 5:ZiIXPTuk/aw7FyfGY2zgCisTMR4Txs+YqY8kvI7SU7v2s3IGr1CT1ZgIgeq5U+bcw7IlqJz5KttZQ2noSaINlwufMf7WrkPy2pT33xTxD26eBNtywzAO7q2KNCM/Meowc8RgssZbG+aY31SvA6lrbWLhFY8hAS6nE+PgsKay8OcyPkEWay325c4WYlKB5e73Fb3VBN1rAeZS+loyXAvZH04YaiO21kGl/WIZ+a5BLVvp0TIqw1uYzZv/I2LyPuMpr6+/sYUTjelF93fqSH+IQxaLImOO8cKV7qlAO5u4IRyQ2P0IE4nl66PTR0HF1ZPKH+om1z762teH4qIdi+HuDU5+puMwUTWRUdmXsVl8CqTrUM8Xgae9kBlFQFTrSIvX3rhANVgWZ8B6GqujT0x4wPIyMxR9iyZ996MG3NPXh/l7mrzZwg1ykix4PAeYbuxiVK9E7tewb9sHIc4GH68DvBMoz9tmjITncq1psVC/FccI3Y4HNO2CFWhARXx99L7r; 24:1lfZE22xbvW/Xrztjsl6BN9mrQUolNBZ7sDERsEbB3tOCp1imqZNMSJWo6DyEw8aVvLenSe1P86qvbFylal5ahhJBoHrJ9EMhRGwQrJ046U= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM2PR07MB1042; 7:1Z263+8kYdB+uQZsK1/uY/oSxfbw0FbKfbojBqteJlFVRFwuYQjqy2a3uIWmKMEPpJ8wXt89nbH7XwwvjaJLMuxPfLVMBhj3BOCfsT8PtRD/eqVTIZQ6ehBUaZuikjRjOBRwzKFnvS+k/IbsFEuHhcTZ/azrpS+GLgfCumZDmvJl+cT+lNDvTtFrBwzkbrawCjaFJpQ1/Oj3o541vpzs+v8+YmyBh4xIKFfJ2fFzBzO4+MwryV1F4ahHhP2LN4ZOaEw6mDjBepcai8QfUj2dgziblzSFseNF1fVnIfjSSB31dwYibkswfx31jwyq4Ud1JmwEouL1oDSuJdb5nf2DrZNagA/QqAX3vaL9CIDvJm2iM3MRkCTlDq7qcrXqaaSeW5c74gmWRR+vOIT2z5uWJ0B+7XNR6Df9hUNpVwCS72FGc0ZCpFktv7vXXNyzW6kKnQ9YQTKPL86OuROxk+u8Yw8oV6YsCEF2D4fYDLmvobgKf49J+MJ7gcE8p3xhJw0TAc4QYv/MSNdIHXc710zaK12aM26Z/FJVUf4b09EoAOcalVoJhOpTpXzff3wGHgoKnkIMS/5q6bejc+tTQZgIYa3juunejr1U+sTWReo7T3xms0m9s/EkUtnWkLwGwZJaGSn3ucPIXxnlMJu3Btov2w3GYLot0kxg04CHjVtpvcTCgCHeqAoa8Dzz5Wiy0N3cYYdtGNC7a3/tPjuuL0V45rwTbtmo/a3s4sXXYF1HV07jdzDEfZiPXav//tLuyYHN0RQzMb6Heg/c7hASp5EfLyB68w7F6CnQPsayK4d/8GA= X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jul 2017 13:32:52.3390 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.240]; Helo=[mailrelay.int.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM2PR07MB1042 Subject: [lng-odp] [PATCH 2/3] linux-gen: queue: avoid extra conversions X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" Conversions are not needed as event handles are buffer header pointers. Signed-off-by: Petri Savolainen --- .../linux-generic/include/odp_buffer_inlines.h | 5 -- platform/linux-generic/odp_queue.c | 61 +++++----------------- 2 files changed, 14 insertions(+), 52 deletions(-) -- 2.13.0 diff --git a/platform/linux-generic/include/odp_buffer_inlines.h b/platform/linux-generic/include/odp_buffer_inlines.h index 1dbc725b..a5658e81 100644 --- a/platform/linux-generic/include/odp_buffer_inlines.h +++ b/platform/linux-generic/include/odp_buffer_inlines.h @@ -28,11 +28,6 @@ static inline odp_buffer_t buf_from_buf_hdr(odp_buffer_hdr_t *hdr) return (odp_buffer_t)hdr; } -static inline odp_event_t event_from_buf_hdr(odp_buffer_hdr_t *hdr) -{ - return (odp_event_t)hdr; -} - #ifdef __cplusplus } #endif diff --git a/platform/linux-generic/odp_queue.c b/platform/linux-generic/odp_queue.c index 3f6e7365..e246d1a3 100644 --- a/platform/linux-generic/odp_queue.c +++ b/platform/linux-generic/odp_queue.c @@ -479,31 +479,23 @@ int queue_enq(queue_entry_t *queue, odp_buffer_hdr_t *buf_hdr) int odp_queue_enq_multi(odp_queue_t handle, const odp_event_t ev[], int num) { - odp_buffer_hdr_t *buf_hdr[QUEUE_MULTI_MAX]; - queue_entry_t *queue; - int i; + queue_entry_t *queue = queue_to_qentry(handle); + + if (odp_unlikely(num == 0)) + return 0; if (num > QUEUE_MULTI_MAX) num = QUEUE_MULTI_MAX; - queue = queue_to_qentry(handle); - - for (i = 0; i < num; i++) - buf_hdr[i] = buf_hdl_to_hdr(odp_buffer_from_event(ev[i])); - - return num == 0 ? 0 : queue->s.enqueue_multi(queue, buf_hdr, - num); + return queue->s.enqueue_multi(queue, (odp_buffer_hdr_t **)(uintptr_t)ev, + num); } int odp_queue_enq(odp_queue_t handle, odp_event_t ev) { - odp_buffer_hdr_t *buf_hdr; - queue_entry_t *queue; - - queue = queue_to_qentry(handle); - buf_hdr = buf_hdl_to_hdr(odp_buffer_from_event(ev)); + queue_entry_t *queue = queue_to_qentry(handle); - return queue->s.enqueue(queue, buf_hdr); + return queue->s.enqueue(queue, (odp_buffer_hdr_t *)(uintptr_t)ev); } static inline int deq_multi(queue_entry_t *queue, odp_buffer_hdr_t *buf_hdr[], @@ -596,38 +588,21 @@ odp_buffer_hdr_t *queue_deq(queue_entry_t *queue) return NULL; } -int odp_queue_deq_multi(odp_queue_t handle, odp_event_t events[], int num) +int odp_queue_deq_multi(odp_queue_t handle, odp_event_t ev[], int num) { - queue_entry_t *queue; - odp_buffer_hdr_t *buf_hdr[QUEUE_MULTI_MAX]; - int i, ret; + queue_entry_t *queue = queue_to_qentry(handle); if (num > QUEUE_MULTI_MAX) num = QUEUE_MULTI_MAX; - queue = queue_to_qentry(handle); - - ret = queue->s.dequeue_multi(queue, buf_hdr, num); - - for (i = 0; i < ret; i++) - events[i] = event_from_buf_hdr(buf_hdr[i]); - - return ret; + return queue->s.dequeue_multi(queue, (odp_buffer_hdr_t **)ev, num); } - odp_event_t odp_queue_deq(odp_queue_t handle) { - queue_entry_t *queue; - odp_buffer_hdr_t *buf_hdr; - - queue = queue_to_qentry(handle); - buf_hdr = queue->s.dequeue(queue); - - if (buf_hdr) - return event_from_buf_hdr(buf_hdr); + queue_entry_t *queue = queue_to_qentry(handle); - return ODP_EVENT_INVALID; + return (odp_event_t)queue->s.dequeue(queue); } void queue_lock(queue_entry_t *queue) @@ -726,17 +701,9 @@ odp_queue_t sched_cb_queue_handle(uint32_t queue_index) int sched_cb_queue_deq_multi(uint32_t queue_index, odp_event_t ev[], int num) { - int i, ret; queue_entry_t *qe = get_qentry(queue_index); - odp_buffer_hdr_t *buf_hdr[num]; - ret = deq_multi(qe, buf_hdr, num); - - if (ret > 0) - for (i = 0; i < ret; i++) - ev[i] = event_from_buf_hdr(buf_hdr[i]); - - return ret; + return deq_multi(qe, (odp_buffer_hdr_t **)ev, num); } int sched_cb_queue_empty(uint32_t queue_index)