asm-generic: export: Stub EXPORT_SYMBOL with __DISABLE_EXPORTS
authorQuentin Perret <qperret@google.com>
Wed, 3 Feb 2021 14:19:30 +0000 (14:19 +0000)
committerMarc Zyngier <maz@kernel.org>
Wed, 3 Feb 2021 16:42:57 +0000 (16:42 +0000)
It is currently possible to stub EXPORT_SYMBOL() macros in C code using
__DISABLE_EXPORTS, which is necessary to run in constrained environments
such as the EFI stub or the decompressor. But this currently doesn't
apply to exports from assembly, which can lead to somewhat confusing
situations.

Consolidate the __DISABLE_EXPORTS infrastructure by checking it from
asm-generic/export.h as well.

Signed-off-by: Quentin Perret <qperret@google.com>
Acked-by: Will Deacon <will@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20210203141931.615898-2-qperret@google.com
include/asm-generic/export.h

index 365345f..07a36a8 100644 (file)
@@ -33,7 +33,7 @@
  */
 
 .macro ___EXPORT_SYMBOL name,val,sec
-#ifdef CONFIG_MODULES
+#if defined(CONFIG_MODULES) && !defined(__DISABLE_EXPORTS)
        .section ___ksymtab\sec+\name,"a"
        .balign KSYM_ALIGN
 __ksymtab_\name: