From patchwork Sat Dec 19 04:17:35 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Pinski X-Patchwork-Id: 58765 Delivered-To: patch@linaro.org Received: by 10.112.89.199 with SMTP id bq7csp1421196lbb; Fri, 18 Dec 2015 20:18:10 -0800 (PST) X-Received: by 10.98.72.71 with SMTP id v68mr10501976pfa.17.1450498689441; Fri, 18 Dec 2015 20:18:09 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w18si12282627pfa.184.2015.12.18.20.18.09; Fri, 18 Dec 2015 20:18:09 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dkim=neutral (body hash did not verify) header.i=@cavium-com.20150623.gappssmtp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933242AbbLSESF (ORCPT + 29 others); Fri, 18 Dec 2015 23:18:05 -0500 Received: from mail-ig0-f182.google.com ([209.85.213.182]:33190 "EHLO mail-ig0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933168AbbLSER7 (ORCPT ); Fri, 18 Dec 2015 23:17:59 -0500 Received: by mail-ig0-f182.google.com with SMTP id mv3so4694183igc.0 for ; Fri, 18 Dec 2015 20:17:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cavium-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=2qZIFaQrzY6B0wFCsnOD61RDtmj2yUFIiLL0EIox4AU=; b=0hGg8GOfdG3mI7Ie7XSRs9gNUqA4i3BnNXky0aIXQ4uxm/DMD3/DpxUksx152pNUDb rAzJLRjUPB/Px1U97XAKE6CQsLLg4gBTvC+EH0O7W8xRgx/33URyTumKH+2y4NpOXy0g BTJCPS9zubb2v7Y1vxUJrIhFn66J7ZuVnUThwQr9v2p0c/Y27Je9TJP+xAhF4lhRpdOz JbZUnHCVZ4DwjOYw82Tp1ERiixF3/6hCSbS+FHOlm+WYeM1cx8sjAuY4xh3FlE9kWTeb KPuyP11NpAR4lvQbwLJEfqFklu9PlEEf0zdCfjS4sCojkSxDlPJ9xnqjexP08niSKnpt /kUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=2qZIFaQrzY6B0wFCsnOD61RDtmj2yUFIiLL0EIox4AU=; b=SSJsMDVADnLAZMSOONuRKi1rwky4y9woi57IFY7N6DhqT63digjlOlBd6rB3uKj4t0 mD05hbh8hx0SLxdqxGKMbGSInAbC9CTus3JkgqO8sVC0dBhSRvlTDxxi841JwJ9c4LM1 rcfukmmKUS3GL2BNLFCtZ0pFiZvT1FHP8+Y1Mjh6NvXHBFZAs9Pqv6XCZbNciO6YWAS6 7NETEBxYUaFda+eeF8XSJkqqLjDX+asN6rGuXIjtlU0geU4QgBzcfDEgSXFrszIv0kCT iGdRdZ0JSEdChj9+UhXgA5CApf7OW7Ls53wPp26FFszeCrE09rKGSUxEA+8eGsJwLssj gWOA== X-Gm-Message-State: ALoCoQli5ne0oqK2M8uCLMaQeec41bWWS2SxTiSkWc//bPwfumJNmzqQS3Lm7G5T6jjsJTAQTAQavzoozzS1Pz58EFK5DHqE9Q== X-Received: by 10.50.79.131 with SMTP id j3mr7229264igx.90.1450498678743; Fri, 18 Dec 2015 20:17:58 -0800 (PST) Received: from localhost.localdomain ([64.2.3.194]) by smtp.gmail.com with ESMTPSA id q5sm3934113igh.6.2015.12.18.20.17.57 (version=TLS1 cipher=AES128-SHA bits=128/128); Fri, 18 Dec 2015 20:17:58 -0800 (PST) Received: from localhost.localdomain (apinskidesktop [127.0.0.1]) by localhost.localdomain (8.14.3/8.14.3/Debian-9.4) with ESMTP id tBJ4Huub003858 (version=TLSv1/SSLv3 cipher=DHE-DSS-AES256-SHA bits=256 verify=NO); Fri, 18 Dec 2015 20:17:56 -0800 Received: (from apinski@localhost) by localhost.localdomain (8.14.3/8.14.3/Submit) id tBJ4Ht4j003857; Fri, 18 Dec 2015 20:17:55 -0800 From: Andrew Pinski To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: Andrew Pinski Subject: [PATCH] ARM64: Fix compiling with GCC 6 and Atomics enabled Date: Fri, 18 Dec 2015 20:17:35 -0800 Message-Id: <1450498655-3820-1-git-send-email-apinski@cavium.com> X-Mailer: git-send-email 1.7.2.5 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The problem here is that GCC 6 and above emits .arch now for each function so now the global .arch_extension has no effect. This fixes the problem by putting .arch_extension inside ARM64_LSE_ATOMIC_INSN so it is enabled for each place where LSE is used. Signed-off-by: Andrew Pinski --- arch/arm64/include/asm/lse.h | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) -- 1.7.2.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ diff --git a/arch/arm64/include/asm/lse.h b/arch/arm64/include/asm/lse.h index 3de42d6..625601f 100644 --- a/arch/arm64/include/asm/lse.h +++ b/arch/arm64/include/asm/lse.h @@ -17,8 +17,6 @@ #else /* __ASSEMBLER__ */ -__asm__(".arch_extension lse"); - /* Move the ll/sc atomics out-of-line */ #define __LL_SC_INLINE #define __LL_SC_PREFIX(x) __ll_sc_##x @@ -29,7 +27,7 @@ __asm__(".arch_extension lse"); /* In-line patching at runtime */ #define ARM64_LSE_ATOMIC_INSN(llsc, lse) \ - ALTERNATIVE(llsc, lse, ARM64_HAS_LSE_ATOMICS) + ALTERNATIVE(".arch_extension lse\n" llsc, lse, ARM64_HAS_LSE_ATOMICS) #endif /* __ASSEMBLER__ */ #else /* CONFIG_AS_LSE && CONFIG_ARM64_LSE_ATOMICS */