[tip:x86/boot 13/18] arch/x86/mm/mem_encrypt.c:79:13: error: redefinition of 'mem_encrypt_init'

From: kernel test robot
Date: Fri Jun 16 2023 - 18:12:03 EST


Hi Thomas,

FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/boot
head: b81fac906a8f9e682e513ddd95697ec7a20878d4
commit: 439e17576eb47f26b78c5bbc72e344d4206d2327 [13/18] init, x86: Move mem_encrypt_init() into arch_cpu_finalize_init()
config: x86_64-randconfig-a005-20230616 (https://download.01.org/0day-ci/archive/20230617/202306170650.aCZUuxjD-lkp@xxxxxxxxx/config)
compiler: clang version 15.0.7 (https://github.com/llvm/llvm-project.git 8dfdcc7b7bf66834a761bd8de445840ef68e4d1a)
reproduce: (https://download.01.org/0day-ci/archive/20230617/202306170650.aCZUuxjD-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202306170650.aCZUuxjD-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

arch/x86/mm/mem_encrypt.c:79:6: warning: attribute declaration must precede definition [-Wignored-attributes]
void __init mem_encrypt_init(void)
^
include/linux/init.h:52:17: note: expanded from macro '__init'
#define __init __section(".init.text") __cold __latent_entropy __noinitretpoline
^
include/linux/compiler_attributes.h:303:56: note: expanded from macro '__section'
#define __section(section) __attribute__((__section__(section)))
^
arch/x86/include/asm/mem_encrypt.h:88:20: note: previous definition is here
static inline void mem_encrypt_init(void) { }
^
arch/x86/mm/mem_encrypt.c:79:6: warning: attribute declaration must precede definition [-Wignored-attributes]
void __init mem_encrypt_init(void)
^
include/linux/init.h:52:41: note: expanded from macro '__init'
#define __init __section(".init.text") __cold __latent_entropy __noinitretpoline
^
include/linux/compiler_types.h:104:34: note: expanded from macro '__cold'
#define __cold __attribute__((__cold__))
^
arch/x86/include/asm/mem_encrypt.h:88:20: note: previous definition is here
static inline void mem_encrypt_init(void) { }
^
>> arch/x86/mm/mem_encrypt.c:79:13: error: redefinition of 'mem_encrypt_init'
void __init mem_encrypt_init(void)
^
arch/x86/include/asm/mem_encrypt.h:88:20: note: previous definition is here
static inline void mem_encrypt_init(void) { }
^
2 warnings and 1 error generated.


vim +/mem_encrypt_init +79 arch/x86/mm/mem_encrypt.c

20f07a044a76ae Kirill A. Shutemov 2021-12-06 77
20f07a044a76ae Kirill A. Shutemov 2021-12-06 78 /* Architecture __weak replacement functions */
20f07a044a76ae Kirill A. Shutemov 2021-12-06 @79 void __init mem_encrypt_init(void)

:::::: The code at line 79 was first introduced by commit
:::::: 20f07a044a76aebaaa0603038857229b5c460d69 x86/sev: Move common memory encryption code to mem_encrypt.c

:::::: TO: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
:::::: CC: Borislav Petkov <bp@xxxxxxx>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki