Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754223AbcKUOyY (ORCPT ); Mon, 21 Nov 2016 09:54:24 -0500 Received: from tartarus.angband.pl ([89.206.35.136]:44414 "EHLO tartarus.angband.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753857AbcKUOyU (ORCPT ); Mon, 21 Nov 2016 09:54:20 -0500 From: Adam Borowski To: Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , x86@kernel.org, Arnd Bergmann , Nicholas Piggin , Peter Wu , Vince Weaver , Michal Marek , Al Viro , Oliver Hartkopp , linux-kernel@vger.kernel.org, linux-kbuild@vger.kernel.org, linux-arch@vger.kernel.org, regressions@leemhuis.info Cc: Adam Borowski Date: Mon, 21 Nov 2016 15:52:20 +0100 Message-Id: <20161121145220.10430-1-kilobyte@angband.pl> X-Mailer: git-send-email 2.10.2 In-Reply-To: <20161121182714.2cd5da75@roar.ozlabs.ibm.com> References: <20161121182714.2cd5da75@roar.ozlabs.ibm.com> X-SA-Exim-Connect-IP: 2001:6a0:118::6 X-SA-Exim-Mail-From: kilobyte@angband.pl Subject: [PATCH reworded] x86/kbuild: enable modversions for symbols exported from asm X-SA-Exim-Version: 4.2.1 (built Mon, 26 Dec 2011 16:24:06 +0000) X-SA-Exim-Scanned: Yes (on tartarus.angband.pl) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2174 Lines: 61 Commit 4efca4ed ("kbuild: modversions for EXPORT_SYMBOL() for asm") adds modversion support for symbols exported from asm files. Architectures must include C-style declarations for those symbols in asm/asm-prototypes.h in order for them to be versioned. Add these declarations for x86, and an architecture-independent file that can be used for common symbols. User impact: kernels may fail to load modules at all when CONFIG_MODVERSIONS=y. Signed-off-by: Adam Borowski Tested-by: Kalle Valo Acked-by: Nicholas Piggin Tested-by: Peter Wu --- arch/x86/include/asm/asm-prototypes.h | 12 ++++++++++++ include/asm-generic/asm-prototypes.h | 7 +++++++ 2 files changed, 19 insertions(+) create mode 100644 arch/x86/include/asm/asm-prototypes.h create mode 100644 include/asm-generic/asm-prototypes.h diff --git a/arch/x86/include/asm/asm-prototypes.h b/arch/x86/include/asm/asm-prototypes.h new file mode 100644 index 0000000..ae87224 --- /dev/null +++ b/arch/x86/include/asm/asm-prototypes.h @@ -0,0 +1,12 @@ +#include +#include +#include +#include +#include + +#include + +#include +#include +#include +#include diff --git a/include/asm-generic/asm-prototypes.h b/include/asm-generic/asm-prototypes.h new file mode 100644 index 0000000..df13637 --- /dev/null +++ b/include/asm-generic/asm-prototypes.h @@ -0,0 +1,7 @@ +#include +extern void *__memset(void *, int, __kernel_size_t); +extern void *__memcpy(void *, const void *, __kernel_size_t); +extern void *__memmove(void *, const void *, __kernel_size_t); +extern void *memset(void *, int, __kernel_size_t); +extern void *memcpy(void *, const void *, __kernel_size_t); +extern void *memmove(void *, const void *, __kernel_size_t); -- 2.10.2 Now with a better description, provided by Nick Piggin (thanks!), and a remark about user impact. This version doesn't split the patch between x86 vs generic parts, would you guys prefer that?