diff options
author | Masahiro Yamada <masahiroy@kernel.org> | 2020-04-05 19:30:52 +0300 |
---|---|---|
committer | Masahiro Yamada <masahiroy@kernel.org> | 2020-04-08 18:13:45 +0300 |
commit | 2a5e5d0c966945f53e50f671babb50a4c201eabd (patch) | |
tree | 6ef882ea474e96668b0f2e1471915db94e13723d /arch | |
parent | c8bddf4feaabd67a7453d795672fa37c4e9e98cb (diff) | |
download | linux-2a5e5d0c966945f53e50f671babb50a4c201eabd.tar.xz |
MIPS: fw: arc: add __weak to prom_meminit and prom_free_prom_memory
As far as I understood, prom_meminit() in arch/mips/fw/arc/memory.c
is overridden by the one in arch/mips/sgi-ip32/ip32-memory.c if
CONFIG_SGI_IP32 is enabled.
The use of EXPORT_SYMBOL in static libraries potentially causes a
problem for the llvm linker [1]. So, I want to forcibly link lib-y
objects to vmlinux when CONFIG_MODULES=y.
As a groundwork, we must fix multiple definitions that have previously
been hidden by lib-y.
The prom_cleanup() in this file is already marked as __weak (because
it is overridden by the one in arch/mips/sgi-ip22/ip22-mc.c).
I think it should be OK to do the same for these two.
[1]: https://github.com/ClangBuiltLinux/linux/issues/515
Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Acked-By: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/fw/arc/memory.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/mips/fw/arc/memory.c b/arch/mips/fw/arc/memory.c index dbbcddc82823..89fa6e62a3b3 100644 --- a/arch/mips/fw/arc/memory.c +++ b/arch/mips/fw/arc/memory.c @@ -117,7 +117,7 @@ static int __init prom_memtype_classify(union linux_memtypes type) return memtype_classify_arc(type); } -void __init prom_meminit(void) +void __weak __init prom_meminit(void) { struct linux_mdesc *p; @@ -162,7 +162,7 @@ void __weak __init prom_cleanup(void) { } -void __init prom_free_prom_memory(void) +void __weak __init prom_free_prom_memory(void) { int i; |