From patchwork Mon Feb 8 14:34:21 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 102827 Delivered-To: patch@linaro.org Received: by 10.112.43.199 with SMTP id y7csp1473928lbl; Mon, 8 Feb 2016 06:35:30 -0800 (PST) X-Received: by 10.66.100.135 with SMTP id ey7mr43306124pab.108.1454942124728; Mon, 08 Feb 2016 06:35:24 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y70si46981637pfa.0.2016.02.08.06.35.24; Mon, 08 Feb 2016 06:35:24 -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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753769AbcBHOfU (ORCPT + 30 others); Mon, 8 Feb 2016 09:35:20 -0500 Received: from mout.kundenserver.de ([217.72.192.73]:58086 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753687AbcBHOfE (ORCPT ); Mon, 8 Feb 2016 09:35:04 -0500 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue103) with ESMTPA (Nemesis) id 0MW8Zl-1aVJyB3uJN-00XHM8; Mon, 08 Feb 2016 15:34:39 +0100 From: Arnd Bergmann To: Greg Kroah-Hartman Cc: linux-arm-kernel@lists.infradead.org, Arnd Bergmann , linux-kernel@vger.kernel.org Subject: [PATCH] lkdtm: mark execute_location as noinline Date: Mon, 8 Feb 2016 15:34:21 +0100 Message-Id: <1454942069-2780643-1-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 X-Provags-ID: V03:K0:j/Dw1Io6I5X60nLlEVA9DaWlIwNJzXVqLIhOe1+TccLeO8/VNyr sSa9/uNR1qwXWPlYqY8A0rvVT3HJ9g3/nX2TPvKEBZyV2O8i+bUgfZDXHzDu0qtOP1MF6oQ LSopp5+e7VpIEnEUzijhMuR4bI+QM7Pi+55f4rAH9nkSvEV6ymBwnSf2FUv6JAj2VCmRQFG O7O8UxdoosPt5d4tsyjeQ== X-UI-Out-Filterresults: notjunk:1; V01:K0:UL6PI+8+/8k=:WbJ/o4o9GT5PtSvRWlZ1Sx iydTHHIeNEmxrele450PYYzhBTxGh4oXQdxbvovnze/5SDeB9Jz5pOj+mul0vxBYmd+hu7zcv 1CshWmOaGhYTs9CO+v6ezwsNhUClIPhmZ/jZaxzQwQzi0qw2PmYdq6Aal9uxYT2/WuTCtq58M gbEPL8D6lal5J+xED8CksrBwnuAfs2pMrdrKUTw5M2KAyPBk+rZAijNQJaH7LbbwurMVA3V0p u56Ip9pWPm8pwL+yjViOoHzkv7N1rQwViPzGLowtOUQPsNf+DdpcSSytV4OBtN8IDx+jlGf60 3k3jEnMokw0mr7yMg0Ga6oRoSobDEHUnIuSzRSQiOaTGbEaCI22XjXWFw4VVDNreHHSCiRVqQ KeihhmHAnDPOHp1xSWkxwsIMFoiXCGNnaLV9PcgoW+pvbH4I2Xqi65niF5vto6AH05ukVgvCt +dIJqaUcsDvv9wAV/0EsnQK9fcT0GXCA6yYVcyM3ljUBY4h+7DqIiYCBQXJxvcKemebL3AtnL AJQN23fXOHDaNiNkowVAKucVUMvwaYOzYUDdGI7hGuinoUEcWCfEUIYoN9IBqI48Zsv5G/o13 /BeaYX8QQ0Ia9eEDo8qS6m+RuXVNlT+SKUqOrL3p9cN9sDHqSBDGx2/LM+0CJaTwZaRX0tcdW 0+fsdpAiHNO3rUXoHc6kh85UrJBF3EGVpFJRBNPCvKM3aYEDdm6WQnmXd4hDhZXBgqKU= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The kernel sometimes fails to link when lkdrm is built-in and compiled with clang: relocation truncated to fit: R_ARM_THM_CALL against `.bss' The reason here is that a relocation from .text to .bss fails to generate a trampoline because .bss is not an executable section. Marking the function 'noinline' turns the relative branch to .bss into an absolute branch to the function argument, and that works fine. Signed-off-by: Arnd Bergmann --- drivers/misc/lkdtm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.7.0 diff --git a/drivers/misc/lkdtm.c b/drivers/misc/lkdtm.c index 11fdadc68e53..5c1351b19029 100644 --- a/drivers/misc/lkdtm.c +++ b/drivers/misc/lkdtm.c @@ -335,7 +335,7 @@ static noinline void corrupt_stack(void) memset((void *)data, 0, 64); } -static void execute_location(void *dst) +static void noinline execute_location(void *dst) { void (*func)(void) = dst;