Messages in this thread | | | Date | Sat, 4 Dec 2021 21:25:11 +0800 | From | kernel test robot <> | Subject | [mark:linkage/alias-rework 5/5] arch/x86/lib/memset_64.S:27: multiple definition of `memset'; mm/kasan/shadow.o:mm/kasan/shadow.c:43: first defined here |
| |
tree: https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git linkage/alias-rework head: 237447148f41ca99a7b980037060b7a6f3afe535 commit: 237447148f41ca99a7b980037060b7a6f3afe535 [5/5] x86: remove SYM_FUNC_START_WEAK() config: x86_64-randconfig-m001-20211203 (https://download.01.org/0day-ci/archive/20211204/202112042133.KForMaM9-lkp@intel.com/config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce (this is a W=1 build): # https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git/commit/?id=237447148f41ca99a7b980037060b7a6f3afe535 git remote add mark https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git git fetch --no-tags mark linkage/alias-rework git checkout 237447148f41ca99a7b980037060b7a6f3afe535 # save the config file to linux build tree mkdir build_dir make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
ld: arch/x86/lib/memset_64.o: in function `__memset': >> arch/x86/lib/memset_64.S:27: multiple definition of `memset'; mm/kasan/shadow.o:mm/kasan/shadow.c:43: first defined here
vim +27 arch/x86/lib/memset_64.S
8d379dad8f1670d arch/x86_64/lib/memset.S Jan Beulich 2006-09-26 8 ^1da177e4c3f415 arch/x86_64/lib/memset.S Linus Torvalds 2005-04-16 9 /* 2f19e06ac30771c arch/x86/lib/memset_64.S Fenghua Yu 2011-05-17 10 * ISO C memset - set a memory block to a byte value. This function uses fast 2f19e06ac30771c arch/x86/lib/memset_64.S Fenghua Yu 2011-05-17 11 * string to get better performance than the original function. The code is 6a6256f9e0ebaab arch/x86/lib/memset_64.S Adam Buchbinder 2016-02-23 12 * simpler and shorter than the original function as well. ^1da177e4c3f415 arch/x86_64/lib/memset.S Linus Torvalds 2005-04-16 13 * ^1da177e4c3f415 arch/x86_64/lib/memset.S Linus Torvalds 2005-04-16 14 * rdi destination ^1da177e4c3f415 arch/x86_64/lib/memset.S Linus Torvalds 2005-04-16 15 * rsi value (char) ^1da177e4c3f415 arch/x86_64/lib/memset.S Linus Torvalds 2005-04-16 16 * rdx count (bytes) ^1da177e4c3f415 arch/x86_64/lib/memset.S Linus Torvalds 2005-04-16 17 * ^1da177e4c3f415 arch/x86_64/lib/memset.S Linus Torvalds 2005-04-16 18 * rax original destination ^1da177e4c3f415 arch/x86_64/lib/memset.S Linus Torvalds 2005-04-16 19 */ 6dcc5627f6aec4c arch/x86/lib/memset_64.S Jiri Slaby 2019-10-11 20 SYM_FUNC_START(__memset) 84d95ad4cb9015e arch/x86/lib/memset_64.S Borislav Petkov 2015-02-04 21 /* 84d95ad4cb9015e arch/x86/lib/memset_64.S Borislav Petkov 2015-02-04 22 * Some CPUs support enhanced REP MOVSB/STOSB feature. It is recommended 84d95ad4cb9015e arch/x86/lib/memset_64.S Borislav Petkov 2015-02-04 23 * to use it when possible. If not available, use fast string instructions. 84d95ad4cb9015e arch/x86/lib/memset_64.S Borislav Petkov 2015-02-04 24 * 84d95ad4cb9015e arch/x86/lib/memset_64.S Borislav Petkov 2015-02-04 25 * Otherwise, use original memset function. 84d95ad4cb9015e arch/x86/lib/memset_64.S Borislav Petkov 2015-02-04 26 */ 84d95ad4cb9015e arch/x86/lib/memset_64.S Borislav Petkov 2015-02-04 @27 ALTERNATIVE_2 "jmp memset_orig", "", X86_FEATURE_REP_GOOD, \ 84d95ad4cb9015e arch/x86/lib/memset_64.S Borislav Petkov 2015-02-04 28 "jmp memset_erms", X86_FEATURE_ERMS 84d95ad4cb9015e arch/x86/lib/memset_64.S Borislav Petkov 2015-02-04 29 8d379dad8f1670d arch/x86_64/lib/memset.S Jan Beulich 2006-09-26 30 movq %rdi,%r9 5d7244e7c984cec arch/x86/lib/memset_64.S Jan Beulich 2012-01-05 31 movq %rdx,%rcx 5d7244e7c984cec arch/x86/lib/memset_64.S Jan Beulich 2012-01-05 32 andl $7,%edx 5d7244e7c984cec arch/x86/lib/memset_64.S Jan Beulich 2012-01-05 33 shrq $3,%rcx 8d379dad8f1670d arch/x86_64/lib/memset.S Jan Beulich 2006-09-26 34 /* expand byte value */ 8d379dad8f1670d arch/x86_64/lib/memset.S Jan Beulich 2006-09-26 35 movzbl %sil,%esi 8d379dad8f1670d arch/x86_64/lib/memset.S Jan Beulich 2006-09-26 36 movabs $0x0101010101010101,%rax 5d7244e7c984cec arch/x86/lib/memset_64.S Jan Beulich 2012-01-05 37 imulq %rsi,%rax 8d379dad8f1670d arch/x86_64/lib/memset.S Jan Beulich 2006-09-26 38 rep stosq 5d7244e7c984cec arch/x86/lib/memset_64.S Jan Beulich 2012-01-05 39 movl %edx,%ecx 8d379dad8f1670d arch/x86_64/lib/memset.S Jan Beulich 2006-09-26 40 rep stosb 8d379dad8f1670d arch/x86_64/lib/memset.S Jan Beulich 2006-09-26 41 movq %r9,%rax 8d379dad8f1670d arch/x86_64/lib/memset.S Jan Beulich 2006-09-26 42 ret 6dcc5627f6aec4c arch/x86/lib/memset_64.S Jiri Slaby 2019-10-11 43 SYM_FUNC_END(__memset) 784d5699eddc558 arch/x86/lib/memset_64.S Al Viro 2016-01-11 44 EXPORT_SYMBOL(__memset) 8d379dad8f1670d arch/x86_64/lib/memset.S Jan Beulich 2006-09-26 45
:::::: The code at line 27 was first introduced by commit :::::: 84d95ad4cb9015ea953bf14cea05ba371d4d42bb x86/lib/memset_64.S: Convert to ALTERNATIVE_2 macro
:::::: TO: Borislav Petkov <bp@suse.de> :::::: CC: Borislav Petkov <bp@suse.de>
--- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
| |