From patchwork Wed Dec 16 01:10:34 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Noam Camus X-Patchwork-Id: 557267 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2001:1868:205::9]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 9D1A81402BF for ; Wed, 16 Dec 2015 12:16:01 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1a90hE-0002PU-68; Wed, 16 Dec 2015 01:16:00 +0000 Received: from mail-am1on0069.outbound.protection.outlook.com ([157.56.112.69] helo=emea01-am1-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1a90hC-0002K5-50 for linux-snps-arc@lists.infradead.org; Wed, 16 Dec 2015 01:15:58 +0000 Received: from AM2PR02CA0002.eurprd02.prod.outlook.com (10.160.28.140) by DB4PR02MB013.eurprd02.prod.outlook.com (10.242.154.16) with Microsoft SMTP Server (TLS) id 15.1.337.19; Wed, 16 Dec 2015 01:15:35 +0000 Received: from DB3FFO11FD019.protection.gbl (2a01:111:f400:7e04::127) by AM2PR02CA0002.outlook.office365.com (2a01:111:e400:8400::12) with Microsoft SMTP Server (TLS) id 15.1.361.13 via Frontend Transport; Wed, 16 Dec 2015 01:15:34 +0000 Authentication-Results: spf=fail (sender IP is 212.179.42.66) smtp.mailfrom=ezchip.com; linaro.org; dkim=none (message not signed) header.d=none; linaro.org; dmarc=none action=none header.from=ezchip.com; Received-SPF: Fail (protection.outlook.com: domain of ezchip.com does not designate 212.179.42.66 as permitted sender) receiver=protection.outlook.com; client-ip=212.179.42.66; helo=ezex10.ezchip.com; Received: from ezex10.ezchip.com (212.179.42.66) by DB3FFO11FD019.mail.protection.outlook.com (10.47.217.50) with Microsoft SMTP Server (TLS) id 15.1.346.13 via Frontend Transport; Wed, 16 Dec 2015 01:15:34 +0000 Received: from localhost.localdomain (10.1.3.132) by ezex10.ezchip.com (10.1.1.4) with Microsoft SMTP Server (TLS) id 14.3.224.2; Wed, 16 Dec 2015 03:15:20 +0200 From: Noam Camus To: Subject: [PATCH v4 15/19] ARC: [plat-eznps] Use dedicated SMP barriers Date: Wed, 16 Dec 2015 03:10:34 +0200 Message-ID: <1450228238-4499-16-git-send-email-noamc@ezchip.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1450228238-4499-1-git-send-email-noamc@ezchip.com> References: <1450228238-4499-1-git-send-email-noamc@ezchip.com> MIME-Version: 1.0 X-TM-AS-Product-Ver: SMEX-11.0.0.1191-8.000.1202-22004.003 X-TM-AS-Result: No--2.565300-8.000000-31 X-TM-AS-User-Approved-Sender: No X-TM-AS-User-Blocked-Sender: No X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1; DB3FFO11FD019; 1:R6dcKAzyrjEf+hEWyK+Jynif0dmbyW0B89Y+vBeBU8eNGsRvc38uLXn+hp0RGQk0S0XjyBllkNLeeUqVGcy9V8EjBJeTuOcwqeklD4JVJEZCbXJJKiJ5pFgmAcgx5PucjfvxNZ8o4ba709H0YTT8j0x2xall7s10IOYu6Cw8a/OiO8Xyja9xAw4oIfruoaTnndibTJj0MgDQdi01du0Qqc1X84lHMvZSVexUeQ7g0SjrpoLlB068HnVhSufyYdNDFyy8OtiL5wVnTF7yo/eVIRNLZD+/cCq7zpd6uN+VSnTOWAHFG5cQxrbMSx6LKKm2v6SM78JzGhm82Mo1trDqKuL7VR2DsA8IUJjGsDblrHi2W4lDrgJKohIoT6xz1oeAVwzv1kbnct7OJVa4w7/H/w== X-Forefront-Antispam-Report: CIP:212.179.42.66; CTRY:IL; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(105606002)(33646002)(1220700001)(92566002)(106466001)(86362001)(5008740100001)(85426001)(5003940100001)(586003)(6806005)(87936001)(1096002)(77096005)(50226001)(110136002)(2950100001)(47776003)(76176999)(50986999)(2351001)(229853001)(104016004)(49486002)(19580405001)(11100500001)(48376002)(50466002)(19580395003)(5001970100001)(36756003)(189998001); DIR:OUT; SFP:1101; SCL:1; SRVR:DB4PR02MB013; H:ezex10.ezchip.com; FPR:; SPF:Fail; PTR:ezmail.ezchip.com; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB4PR02MB013; 2:S4yAk7ajhjBRvOZ3tzBo84QBSyQ69MNnK3Ysxzx5JWkkDFp4QeGPVhVXnh+99VZq/78e03X7sBAzzeiD4gzsMaIOQapGtgFRpXF9ycDpnbL0Gef1uqT0aA/TE/5m8f0rn+gQZ7JRbQoK4QvoTnOr8Q==; 3:Y73MxmCsp+ylzMnMC0PdHocz1Qpo/PuNPNa5OXqb5rASOhZjEKJ8ZtKZDVE5fjximX9lI59aclYxLiQql+OZ8tXdw3McxxzXn9RGTSgWh6pqxmeGzu9xN6KoiiPSMl+ePXgNHdrSWj4Kp9MwhwVC/aOtnYBulWlkPNZQlPKYaUHC3iwX70G8XYfMUMugEuwDmH423Dg51dh6zDWinTAvfTUYZQW3vfeLa6vG8PGUJkA=; 25:Ifl8NDB6vzINYmr9x7eEG9v6XDTdmy1Kb3ttC9ncV+cdCi3zpGzYmxzCribB1OUiXHCwK9IAj03LY4sKiup17dhCZQ5vVeAxGWwFxoWVeBYD5xrnXzJJIajSe3PdMQuQ+bKtNs3Ar1wC7W4ZCIfPtDxjtIH0wlKRkjb+bt6D94YMrTMZ04SlZF/OLUPVkF5T/CIr47nFizcTfWt+zWxbDdUE9EMpST/0cGcjaxO3vV7V73qfrPNnhaV3MOjs8i3+F9fDOeOufy4E0XVidYbV4g==; 20:yN0mA9JUfKniFh5NXIBeh9YqhpZFi6bgfhwPVCZ0l4ngQOS/ewRSaF0eLvDrFAeCp/KmN5udwEJatD8Bs0INzqOOnQgngkuTTqB2dyI/lMKQxW8kZT8XkoukaaDpXQRx/BA/l7IZ/8b4kspc8qVGUIZoyPFFy9IsNrG2PfHPbF4= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DB4PR02MB013; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(121898900299872); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(5005006)(520078)(8121501046)(10201501046)(3002001); SRVR:DB4PR02MB013; BCL:0; PCL:0; RULEID:; SRVR:DB4PR02MB013; X-Microsoft-Exchange-Diagnostics: 1; DB4PR02MB013; 4:6XVhJXIUtruXuVcwXKQbb/h6Oj/qTsi0Jhhgaqoy+qwY9x4rVHEBI4bA/YLGavezSCo8KGe2yaJVJnL/BKkV8E/UDOc6VACuYPwJ4+pNclAnQ+TJNaWM1Inc4d4vJpIZatgPEEzWvJZh/JSrI6ncfc117UovmRXsiR8jrI68pB5QIpW+n4Ltx2KmFWRmtZu4x4BvhJGKYPYkCCa4U/en+SCRB5UnH36FAlO4EfjKCAilYf6ZyKx5x3cHqd0tpx0nWM1KuYcayWHZ4dcLlViRoM2ZFdPWc2PGlgWSiWlpo83i4Z+iGihe9//UQ5dDCSrCp+KsbgvFXh0y+Hwx7PyihozBHlOjFkUot/q6cNXrGcaeS6AI+RWcoVGanxvMbOsIO2/GIAaepw6zYCUlEKTDh/oXnP+qaxlnOWf27+Du3JflxljU8KfjNx2wyfCMHFMy X-Forefront-PRVS: 0792DBEAD0 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB4PR02MB013; 23:urYZdL764qm2GoyKcT3/0hO6Kfo7LBbkMqHa1T2FjR?= =?us-ascii?Q?IqF80CguvIyJbdyZrRCj5OmOBkc3Twl0tkKF0klzYJkgHb5D5wri7E0/su2j?= =?us-ascii?Q?JL6Hmo8lYD3xE6fY7tj0UgFbs1f6mU8S7+O3GGYKpOeClJ8QETCcNTfZ2Yd5?= =?us-ascii?Q?JT/SIgAayLwW8SQSsuIToSi67qDWWRwoclxd3fbwMbL8JpJsZO4y73jbgP+w?= =?us-ascii?Q?/jQrQsW/DPI44y+BNRfZHCh4mOWXnLTETQxrzWU5508p8bFNVKNslAboPGbt?= =?us-ascii?Q?suhAQnGEAgpla2Xng2syps0stC3FMHDIWe/CqrmYSb0HPPJdX1qOkwzvnhu1?= =?us-ascii?Q?V2CdjAtST14gSnIiIrqypYnHE0EoLpVdrQ9wsW/HnuUXAz92qfN63GnNeOec?= =?us-ascii?Q?mNzSl7LxYH/RpgsusmuSIEWq/+6SJdRQbzDuF+PgFqtiAZuldQl1BiQHAe/I?= =?us-ascii?Q?VhdssKWtk5H14mDpX8O8Fps4Hi/eQF9BbUJ7pck4TNh5tBEyAwiQS3+/Fzms?= =?us-ascii?Q?Ts4bFxvhZvZ4+HcSI4KtCJ9Lv7i2kScvevnUMG4nL3e27Og+7ulnpPXTen5l?= =?us-ascii?Q?hvtGN9/3Bh2jNVRXKbSffLjhkvaI2m8uSXBFzX4FgrH8JlGuvo9Yc3SZK5Wx?= =?us-ascii?Q?mkRDE5ZUp0GnIRJ5174INQ3nbnCBr3wlIEkCnppP8LCflzRq2u9nb785FVXX?= =?us-ascii?Q?TyKCtPkNtWx2J0nkVve73pimLJmNoL/n9NE5sLHhH0yeYxsRIOh+j9toq+BQ?= =?us-ascii?Q?xv6/lec95eP54Th2um5dpfEJQLFdUncPrFUJKuO3gNTgo+V11Q88DqiuII94?= =?us-ascii?Q?3jFWo3qMf0lQWP5JHITEYBUf+LDhacpbXcgsBjTodflQski/lrkn1DQWQfSW?= =?us-ascii?Q?/DjVX5VvQzKMCD51gyt9kHIVqpzYgVte0xBBCantK/UYjT0+OXzUc2wvt/lX?= =?us-ascii?Q?3J6BVHsM0yVk0qTxCVGsZuWysmeslU5Yl+BNDbhvB7ufHhCQIOziEK6SiUms?= =?us-ascii?Q?WQQx89o/F+wQq5va2JvaUaUbpw3XK5PHmjoFZYSp6vsg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; DB4PR02MB013; 5:gER/oiUQ8zQ4cIY95a6Ec4bC8VLN8lQGVj4XRBYiAQ66FNyKO4UkMVwdRD7W2A2DzPI+M3gB2rarhkEZzMkBGxSSrqfhGYo8FjsGjlQBF6jhROUIGVgUH5rwUAFC3REMegzeu4+yvmpU/eLCmK+KYA==; 24:TTZBc27ScPLr2c9YczU4qOEmMqJYTd6HwrH+NeB0TxvQcb1Mc0+nue+CKW4NlI8SgfNqbTHDGET6N6EoHCgWUfanSAlmM51fJaohi8WvqF0= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: ezchip.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Dec 2015 01:15:34.1537 (UTC) X-MS-Exchange-CrossTenant-Id: 0fc16e0a-3cd3-4092-8b2f-0a42cff122c3 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=0fc16e0a-3cd3-4092-8b2f-0a42cff122c3; Ip=[212.179.42.66]; Helo=[ezex10.ezchip.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR02MB013 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20151215_171558_538368_CD07915E X-CRM114-Status: UNSURE ( 5.73 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -1.9 (-) X-Spam-Report: SpamAssassin version 3.4.0 on bombadil.infradead.org summary: Content analysis details: (-1.9 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [157.56.112.69 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [157.56.112.69 listed in wl.mailspike.net] -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -0.0 SPF_PASS SPF: sender matches SPF record -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-BeenThere: linux-snps-arc@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Linux on Synopsys ARC Processors List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Zijlstra , cmetcalf@ezchip.com, daniel.lezcano@linaro.org, Noam Camus , linux-kernel@vger.kernel.org Sender: "linux-snps-arc" Errors-To: linux-snps-arc-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org From: Noam Camus NPS device got 256 cores and each got 16 HW threads (SMT). We use EZchip dedicated ISA to trigger HW scheduler of the core that current HW thread belongs to. This scheduling makes sure that data beyond barrier is available to all HW threads in core and by that to all in device (4K). Signed-off-by: Noam Camus Cc: Peter Zijlstra --- arch/arc/include/asm/barrier.h | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/arch/arc/include/asm/barrier.h b/arch/arc/include/asm/barrier.h index a720998..a559732 100644 --- a/arch/arc/include/asm/barrier.h +++ b/arch/arc/include/asm/barrier.h @@ -34,6 +34,7 @@ #ifdef CONFIG_ISA_ARCOMPACT +#ifndef CONFIG_ARC_PLAT_EZNPS /* * ARCompact based cores (ARC700) only have SYNC instruction which is super * heavy weight as it flushes the pipeline as well. @@ -41,6 +42,13 @@ */ #define mb() asm volatile("sync\n" : : : "memory") +#else /* CONFIG_ARC_PLAT_EZNPS */ + +#include +#define mb() asm volatile (".word %0" : : "i"(CTOP_INST_SCHD_RW) : "memory") +#define rmb() asm volatile (".word %0" : : "i"(CTOP_INST_SCHD_RD) : "memory") +#endif /* CONFIG_ARC_PLAT_EZNPS */ + #endif #include