From patchwork Mon Feb 6 12:37:56 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 93423 Delivered-To: patch@linaro.org Received: by 10.140.20.99 with SMTP id 90csp1687518qgi; Mon, 6 Feb 2017 04:41:31 -0800 (PST) X-Received: by 10.55.78.77 with SMTP id c74mr10023800qkb.109.1486384891897; Mon, 06 Feb 2017 04:41:31 -0800 (PST) Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id r3si405891qkb.46.2017.02.06.04.41.31; Mon, 06 Feb 2017 04:41:31 -0800 (PST) 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 8B0C762EBA; Mon, 6 Feb 2017 12:41:31 +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=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H4, 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 267C362EBD; Mon, 6 Feb 2017 12:39:08 +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 8C37160B51; Mon, 6 Feb 2017 12:38:34 +0000 (UTC) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0106.outbound.protection.outlook.com [104.47.1.106]) by lists.linaro.org (Postfix) with ESMTPS id 78D6362DB0 for ; Mon, 6 Feb 2017 12:38:26 +0000 (UTC) Received: from AMXPR07CA0035.eurprd07.prod.outlook.com (10.242.64.35) by AM4PR07MB1619.eurprd07.prod.outlook.com (10.166.132.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5; Mon, 6 Feb 2017 12:38:24 +0000 Received: from DB3FFO11FD038.protection.gbl (2a01:111:f400:7e04::128) by AMXPR07CA0035.outlook.office365.com (2a01:111:e400:1000::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5 via Frontend Transport; Mon, 6 Feb 2017 12:38:24 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.37 as permitted sender) Received: from hybrid2.ext.net.nokia.com (131.228.2.37) by DB3FFO11FD038.mail.protection.outlook.com (10.47.217.69) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.7 via Frontend Transport; Mon, 6 Feb 2017 12:38:24 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1348.nsn-intra.net (10.158.36.136) with Microsoft SMTP Server (TLS) id 15.1.466.34; Mon, 6 Feb 2017 14:38:23 +0200 Received: from mailrelay.int.nokia.com (10.130.128.30) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Mon, 6 Feb 2017 14:38:23 +0200 Received: from fihe3nok0735.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v16Cc4Mi019874 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Mon, 6 Feb 2017 14:38:04 +0200 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v16Cc4VA019846 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Mon, 6 Feb 2017 14:38:04 +0200 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Mon, 6 Feb 2017 14:37:56 +0200 Message-ID: <1486384684-14761-3-git-send-email-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1486384684-14761-1-git-send-email-petri.savolainen@linaro.org> References: <1486384684-14761-1-git-send-email-petri.savolainen@linaro.org> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.37; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39450400003)(39860400002)(39840400002)(39410400002)(39850400002)(2980300002)(189002)(199003)(86362001)(626004)(110136003)(5660300001)(107886002)(50466002)(48376002)(97736004)(189998001)(356003)(2906002)(38730400001)(575784001)(5003940100001)(53936002)(6666003)(6916009)(2950100002)(77096006)(2351001)(50986999)(92566002)(68736007)(76176999)(8676002)(33646002)(81166006)(36756003)(450100001)(8936002)(105596002)(106466001)(47776003)(50226002)(22756006)(81156014)(305945005); DIR:OUT; SFP:1102; SCL:1; SRVR:AM4PR07MB1619; H:hybrid2.ext.net.nokia.com; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB3FFO11FD038; 1:wtP31KlI49c2xA9iBY6QHrGwg17yI15lHPTEmLNcAVpXf2mdA0UisfmFVaBz8ImjkAschQrXmm0qH5UJQQY8kGyI8wZKkysSty8id6sMsojfhUkU56fGF6CG7HfpQPrX/0v4Y+2hrcxW1lh3z8TOL+CpwwSyQFsip8N7n1BbzemJ0OXom9wZihLUtdbObHCpZih8BrcnFsHt2KX/Wl/KFJmy7g8iHVVKHue4hiVC13s2sP4WErzscAq6Bnlq94Q4Rt8kgiNIn17mwfgb54WBk+OE96eh2ecy17O764yqyAsLtnRPLGczDKVvGUSHbGbga5feuKYs1KVri1ar6cV5RYsqZqiUk99xZlL9V2moM48Y+MYru3kJAi/CDFQInRkb2oCttNiTwMqXmF4bApcy4aOAoLHtXxVV1e9jAak5/MYgrHfiUIM6UJ7qRBVHx/VsE00HL1Uzy5U3sDbKrdfEwDuWTtsCtCNWDsich4d6zxo= X-MS-Office365-Filtering-Correlation-Id: c16b06b6-27bc-4c2f-4e78-08d44e8d0aa4 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:AM4PR07MB1619; X-Microsoft-Exchange-Diagnostics: 1; AM4PR07MB1619; 3:BlkeyNyg8TR6Bm2MwiLryPE5Erlw9MACqYegX3s9/NCrjH9quRZgpuQSKvC4zVJ2f1JwH3HVoT7EQfkue3ZTq9ljCcdDxtprm7D/MrXL/IJp4BL7fd6sIrANdUllDNbj6ZsZY3JVB6DdlrhOX2dE+QuWy4RMPUq+QZE4chp6s/CIzxV8qJ6S5cDFmYdyGzKJMnk125JpyK0QC+OruZDTj0auqJ64it/kCCEp5zGEef46ri1QbmhaseK2ZCqCDWf4tGyRGIQ7CzCJbfw75b9aY+ofe7R2htco54rg/BGO5JrzY2PdNq3IM1snNslMUbnzjq76m8uurNWeVkA7GbzIhV0al5BsaMYS5BaxcsWjWteBbDFt9HFD41jyr/Iwv5QD; 25:Os+fyzbHzFLcvAyEmdJz9pmdYAbC9w9iwOJ5p6X5qg/02Hww+TFOtrHiPNaDdHWAbh+Q2Lnb21wHyKZTi4OwfeeWx6mwT34x9JIpkWI/RboytnlKAMo3bCVNcgLmg8YNKq8ZBiO1Mj389T6xC/rmx7mkOe5TBgIaC0g+z2zBqRBgqLCiMBOJi7ShZzFBok8++NFSw7ypYGojDNY4rD3szszyCswxq7W7pndJZ174hq4SKIZuuuFexK8Ga6BbG18NrWlgSPEOQ+pdbXl9c8vwwSEwqvpIZdJCvy5+RThNL0wz2xhe089gRP7WwnxDBbHkC+ENzezTqvHxvNX/f+0ssmmfBZEELa7J0yxl3g/dELxNNMGjNdIAw41tw+eXo3WdJ3YNuoLbc14fHRoFWSs/BsLYpNDV2UHhv205J3NqZprPN55Kkivr4ibpEbQhdqN3OYyZRB5Wx2xwnyyeW5Z8lg== X-Microsoft-Exchange-Diagnostics: 1; AM4PR07MB1619; 31:nqXv9GHQ8d/wKjQLqv5a2ODChiiHR5RrLZlRbnaVUzYMN+d4CjTLnym18RYzuINf99jhrTd0/GGhkCj/NZaGmvna7UWx6lPzHRuVVR0TBqq/lNYy1FJXQVe+f4fWDuevIQk71kws9etGHNnVeHS6wYyBlubSG/qyVus9aaURDz8LEjl5GftRXlv9SBxmZ7HmgvBeGl9h3ha13ASmSg2xTqz+MF7LNZaA85ppBj3qHRoLKr/2dvbfC4R/w1jDrwVjTIIigR3CRxEQ4UAjMijs8w==; 20:f55fuX/YLO3185M4U/hUM5cNRx8KMJb0OSj8IOzvu3q7CR1tpWhmDY9dcF67PUBWE1PJHuUlf6pAQCL6bSVECWeMpgY6zzSrPWS32CQ577RGL4JSLxVCZ7ia3u6GkGvK/Br4cKAJQrTS7l+Iy6qcU4vuFaArDVNNE+90UuymFTB/Mgq29sbMpI7dwMuIlXH+rGzVCQpVRi+DdQRb05wXTMTXlRrFikukQRT0bTnUTEFAPLbymdoIiDzzkfwnS6WtnbLBvCwe3qM25bs1A04zIxbE6GmtjyL5AJE0cJJRKio7xekqw3cjGTX+55TKYN63npBq3UeNSY9UtL6AGeT4VO/zMWtj3FXsFzBezlqMygXPBx6mBrAtw09HNiMFTNOX5wOg9lb7i1qsZRjdcb5KLTPcZLoNlqeQMdzJ7YUNU8nh6UUYCJJNrxUj2AMSqGJ03TSg5PhdlOjomWK6MUBNu4/0rkKKK8R1C4UkRWl5LgHMT1cdONZT7ZXXRtezCttSQ6Nm1VBZYlY0uCunZvCMsNjpQzCozgSzArAmjozYt2eeRMOqUwjqWvyn5BORzKmVjHbTtUegim5RUj+fsz9s3Tjja3FMMabxShICUtW0hvs= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(278428928389397); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(13016025)(13018025)(20170203043)(3002001)(10201501046)(6055026)(6041248)(20161123558025)(20161123564025)(20161123560025)(20161123555025)(20161123562025)(6072148); SRVR:AM4PR07MB1619; BCL:0; PCL:0; RULEID:; SRVR:AM4PR07MB1619; X-Microsoft-Exchange-Diagnostics: 1; AM4PR07MB1619; 4:S0j3+SUlS+ew6SG71ftEYkZ202BSgPDe6c/4UxzDtdnVH42fFdsulM+JxlSHLi9O+FAPD26RoB3wSWz5EkNlz2DFdzv4szCCG3SBIwK4GVFVPC1XTx3L7LvtiSjpR1Q9saNiWLhxJ3Z2sziLoMvUK/J5/Y0OvfUr+rA0VaNf2S2div8kbVKFkQ2pG4ZE6MAKxJ1pZRv6jErC4D29LycCTit6vIQw1yMowOvJbWm2Fc9jvS5dDQEtkDZ4V2wGMsomm/ucJ9h6yp7DX8TTWXePxqpj6VvEaoL/m+TdoO/UbyKpii2hvXocUfVuYZZdvq71Bs/Qf9V901mBFfi941n2lnyGMe6+a7drb/9d1c3LuH8bmPQjbfcdCEy3yxPpfcnXL9In/dx6KscerxYcSmP9mOtLAvZETH+Vw7g1QQDM28cCVCpHcGzrKacK8KXEk5QiRaN7wTbR38/Fd1JmiowmbqYLcoOuLrL3X0WfCa5/TWPDgBch3tbZNuZD2PrNPZxnRaSfnLIK4Dh5wt2b0h6xrltcpzEr8qIerY5jPbSSN/kLxX+oj2UeqlJRXnE25408N9Ufg/xG9E700QkLSpHBndXNwier6+Zo8D0aABjUe329iXfgxjhg9NV4uZXrRe5hDxY5YZIs0a8YJ9azht49vuheoCmlpG6Tj52xPC3fBVWXxJVyGJDo+XZCKER3FBBAMr/hC9qGyDnqWb2ShN6/6NRNiPx4a9Xc94dCPhpiXIk= X-Forefront-PRVS: 0210479ED8 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR07MB1619; 23:WyvHAqOPAEKrS2fdzN7Kot2BEci6gLRMG+uZys0gP?= kpzbUFtMvFYs63mttKD6O+GZxs0d1alZ37Hx/I1pyIKJa5qYswx4I1RUTrC1kNwQDcDcaiVzj3xTOMXU1bUF/lRhWb/KmN8TgHrTgqUaDshTG1QaUqvrBBkONTFzm//HHBDebdHxcM60UvTuSO3ksxF4jkEkVfWG8X8ZdRiPQHzIJXiqzHZFrpcBpij/DU+aoYZLgv7i5TBrtuYAYILNNrEq0051Pk4vpvSkaJCP4JhE72TZGxMui6B8UANT/mPc60X9spMW0JGxydhkmab2Um0JG0Dxh+StgaMNvb5D7x0AV10JtpRWog/td1DtFl6AB3GnvIWncB8yPiU/vGeX9Mixbb4uTBEy+wwxDIOJtKbS16a6CRDhcWFqwxgbfSldOPHvXkQVucUhgRDVaJdZSV+PKbVEwq/0re18fKg3s0u6IU4nxB1/ntN7QwziscxXFh52Y8Usdj6jJeeHcSAL0bMk8I24FZGuGoNwIfMy9F0EMIIZ7SddUjtPj3j3vd+WkushRqB5Hr2wLihgZcXQjPjAFkY5j6JofPFo9cOK0WJAa0hj+zX9ajoEunD+OEfomAC1TO5SwHPur6hGevFQxqELs/T1LC9wI3EPK0xO0TstC7yfJqR1xD6QSPOqtKvvn/A+bKQ05c9jyGg37ffOQklBijSgQS+XGjZhxMwo0qtd5tPZlXiP6geU3B4wSumYLx+Lz/5e5LYwGickKWoHaXpKx2WvAxGl1ttVSu+d3nDJCfA5pMridHPXSdUA+c4rJ5BUQkdRET0s12h1Nbj6td+Y0i/wl4ti4bbY0GGl3x+lWBpTG/ZNJGeqKiRB+nU0AetfX9zpMHkdCtCqo/LFzlnxTEUuvvXHhLjk9u3rrXTRwdlQvZTbvDzEQHaRUrpR78ca+Zv164lvum9fHFwSz5eNyDl28k4KXaCXnUBjW7OaZHYvP/7Ne7/BMxAWK+sP6PbGBva47igiV1cTCiwx4xCyAUAiu6Ffs/55F6opN2vwkIsuyn6C3+4iY3XS45ZHmiKle5ILd6GvR0+8oF0I7D/WfXrCNvWY/4+IwO20AKuQRKhp8ocjOHzd0t5Ct8IyDlKVI4XyN/60fqpPhLhv7llwhdIuJPn7em9zGZJLk/dyA== X-Microsoft-Exchange-Diagnostics: 1; AM4PR07MB1619; 6:Ig3hHlwwDynYpF66/7qyTttuOseM00LDS8lw672rucP5pSTBWS1HonlqBK+tP/r0KM6YfRGWrXfGJB0As3/f95qE9OazjWjH1JmA1jkNTNyID3lQO3u3ll/8kUlIFgplU27BXtnsZyvbfVW1g7SbG/HxIsclHiNVXj9RJepaaYr/SvJBzbjZZw6NKXSj+9t6mloy4vfuFu6As/YVk2elVZUQsOVZ5ekqqdRN0AnsvoTNwbbbIF2dc2vI1fXkbN48xiYjW0P8Wpq7DvTdytyvT8n5vccNggslEeEXDaDQ0VvGYKdSTDzqJ9lKMcNwRAee1uT3/LN66OeDw6ZVuzDAqGFRUYtqiL/ZhE3pvVrPis++o9RpqiQ9A/ZDDaTB+QcKYnbCUsz3v8PW0v5laLbFCFo6qLxPB12WSua6OPelP3A=; 5:MH3XX489on55PN4zOysJpV7QyUK5tVPd6MQTL/r4FfemYG1qZp697wszKczWlrfU+7wzP6XrUkTSjYHue4Wpc52qlPaVUD0wzNQgzZSUWKcBDGo8dBxP4Fu6+s+miPsmlMlffQxUc6RG9kI4bsS4Rg==; 24:1um28rBx+axTXH5ZQr+NHgv1WxayiyVx2/lZo9/CHBZw3O+By4dHbfR6yEtPxXVilMBkav9tsiAUw3bubhZIAveOmLQEyK0X4ODikyBN0XE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM4PR07MB1619; 7:N2PW/67Z1UnFElTz1KaHBnS+bLTdVKT89BjdChyPgLgVFIdmbvjS8HU9ZsNJW1rVXhMfXt3DchWSayOXhD9mm04c6YXghVCGkj86jI5rowaxfbUm0Gmj3pqWXIOoVzmuA/XPRb5jM0Vl+f/UOnDSobWZx5cwobJwgwEN+ZTWqbviJnxlzPN2lOhVUX0AMsZLdAP17IeTRkqq5GJNbys28yfrPkD3piyxep4Opspq97PGAeLMmrYuCOqKQdyINoQyNbWTp8rTQwjCQ3aEeDw3hyTyYXfTK1acMSYgquDZCpNVJVBtxuVf0A4f3rqbKLx80ED3kaBzlfISXPf0XcL+O8W9AWSXRyz69eWKZI2ze/lvomfRpJDv8AsHWSLQxmgGIxyd+XUCiIgnfLI1fIrUzHov83udNVOe076xnVyLnq94V8+coQkJr0r+fjv9JIXkyNlBox3B5Wb97J4Ls3atat09+/XxapAtpI40wWcCUWOjTPt7Q07zS/jmWki2M5P6Zgv4uzLE+7spuyk4MGdczQ== X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2017 12:38:24.0885 (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.37]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR07MB1619 Subject: [lng-odp] [PATCH 02/10] linux-gen: ticketlock: inline also in application 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" Enable ticketlock function inlining in applications when not building for ABI compatibility. Signed-off-by: Petri Savolainen --- platform/linux-generic/Makefile.am | 1 + .../include/odp/api/plat/ticketlock_inlines.h | 19 +++++++++++- .../include/odp/api/plat/ticketlock_inlines_api.h | 36 ++++++++++++++++++++++ .../linux-generic/include/odp/api/ticketlock.h | 4 +++ platform/linux-generic/odp_ticketlock.c | 24 +++------------ 5 files changed, 64 insertions(+), 20 deletions(-) create mode 100644 platform/linux-generic/include/odp/api/plat/ticketlock_inlines_api.h -- 2.8.1 diff --git a/platform/linux-generic/Makefile.am b/platform/linux-generic/Makefile.am index 576fedf..64b0287 100644 --- a/platform/linux-generic/Makefile.am +++ b/platform/linux-generic/Makefile.am @@ -94,6 +94,7 @@ odpapiplatinclude_HEADERS = \ $(srcdir)/include/odp/api/plat/thread_types.h \ $(srcdir)/include/odp/api/plat/thrmask_types.h \ $(srcdir)/include/odp/api/plat/ticketlock_inlines.h \ + $(srcdir)/include/odp/api/plat/ticketlock_inlines_api.h \ $(srcdir)/include/odp/api/plat/ticketlock_types.h \ $(srcdir)/include/odp/api/plat/time_types.h \ $(srcdir)/include/odp/api/plat/timer_types.h \ diff --git a/platform/linux-generic/include/odp/api/plat/ticketlock_inlines.h b/platform/linux-generic/include/odp/api/plat/ticketlock_inlines.h index 87432a7..ecbea7c 100644 --- a/platform/linux-generic/include/odp/api/plat/ticketlock_inlines.h +++ b/platform/linux-generic/include/odp/api/plat/ticketlock_inlines.h @@ -13,11 +13,12 @@ #ifndef _ODP_PLAT_TICKETLOCK_INLINES_H_ #define _ODP_PLAT_TICKETLOCK_INLINES_H_ -#include #include #include #include +#include + /** @internal * Acquire ticket lock. * @@ -110,4 +111,20 @@ static inline int _odp_ticketlock_is_locked(odp_ticketlock_t *ticketlock) odp_atomic_load_u32(&ticketlock->next_ticket); } +/* Include inlined versions of API functions */ +#include +#if ODP_ABI_COMPAT == 0 + +/** @ingroup odp_locks + * @{ + */ + +#include + +/** + * @} + */ + +#endif + #endif diff --git a/platform/linux-generic/include/odp/api/plat/ticketlock_inlines_api.h b/platform/linux-generic/include/odp/api/plat/ticketlock_inlines_api.h new file mode 100644 index 0000000..5efe696 --- /dev/null +++ b/platform/linux-generic/include/odp/api/plat/ticketlock_inlines_api.h @@ -0,0 +1,36 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +/** + * @file + * + * Ticketlock inline functions + */ + +#ifndef _ODP_PLAT_TICKETLOCK_INLINES_API_H_ +#define _ODP_PLAT_TICKETLOCK_INLINES_API_H_ + +_ODP_INLINE void odp_ticketlock_lock(odp_ticketlock_t *lock) +{ + return _odp_ticketlock_lock(lock); +} + +_ODP_INLINE int odp_ticketlock_trylock(odp_ticketlock_t *lock) +{ + return _odp_ticketlock_trylock(lock); +} + +_ODP_INLINE void odp_ticketlock_unlock(odp_ticketlock_t *lock) +{ + _odp_ticketlock_unlock(lock); +} + +_ODP_INLINE int odp_ticketlock_is_locked(odp_ticketlock_t *lock) +{ + return _odp_ticketlock_is_locked(lock); +} + +#endif diff --git a/platform/linux-generic/include/odp/api/ticketlock.h b/platform/linux-generic/include/odp/api/ticketlock.h index 85be4bc..e0f5d81 100644 --- a/platform/linux-generic/include/odp/api/ticketlock.h +++ b/platform/linux-generic/include/odp/api/ticketlock.h @@ -19,6 +19,10 @@ extern "C" { #include +#if ODP_ABI_COMPAT == 0 +#include +#endif + #include #ifdef __cplusplus diff --git a/platform/linux-generic/odp_ticketlock.c b/platform/linux-generic/odp_ticketlock.c index f18d78f..f73dd9a 100644 --- a/platform/linux-generic/odp_ticketlock.c +++ b/platform/linux-generic/odp_ticketlock.c @@ -5,6 +5,7 @@ */ #include +#include void odp_ticketlock_init(odp_ticketlock_t *ticketlock) { @@ -12,22 +13,7 @@ void odp_ticketlock_init(odp_ticketlock_t *ticketlock) odp_atomic_init_u32(&ticketlock->cur_ticket, 0); } -void odp_ticketlock_lock(odp_ticketlock_t *lock) -{ - return _odp_ticketlock_lock(lock); -} - -int odp_ticketlock_trylock(odp_ticketlock_t *lock) -{ - return _odp_ticketlock_trylock(lock); -} - -void odp_ticketlock_unlock(odp_ticketlock_t *lock) -{ - _odp_ticketlock_unlock(lock); -} - -int odp_ticketlock_is_locked(odp_ticketlock_t *lock) -{ - return _odp_ticketlock_is_locked(lock); -} +/* Include non-inlined versions of API functions */ +#if ODP_ABI_COMPAT == 1 +#include +#endif