78bdbbac08
MIPS provides multiple definitions for the following functions: fw_init_cmdline __delay __udelay __ndelay memmove __rmemcpy memcpy __copy_user The generic ones are defined in lib-y objects, which are overridden by the Octeon ones when CONFIG_CAVIUM_OCTEON_SOC 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. If you look at lib/string.c, arch can define __HAVE_ARCH_* to opt out the generic implementation. Similarly, this commit adds CONFIG_HAVE_PLAT_* to allow a platform to opt out the MIPS generic code. [1]: https://github.com/ClangBuiltLinux/linux/issues/515 Reported-by: kbuild test robot <lkp@intel.com> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de> |
||
---|---|---|
.. | ||
bitops.c | ||
bswapdi.c | ||
bswapsi.c | ||
csum_partial.S | ||
delay.c | ||
dump_tlb.c | ||
iomap_copy.c | ||
iomap-pci.c | ||
libgcc.h | ||
Makefile | ||
memcpy.S | ||
memset.S | ||
mips-atomic.c | ||
multi3.c | ||
r3k_dump_tlb.c | ||
strncpy_user.S | ||
strnlen_user.S | ||
uncached.c |