mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08:00
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 | ||