[android-common:android16-6.12-kminext 1/1] arch/arm64/kvm/hyp/include/nvhe/modules.h:31:6: warning: no previous prototype for function 'module_handle_host_perm_fault'
kernel test robot <[email protected]>
| Newsgroups | dev.linux.lists.oe-kbuild-all |
|---|---|
| Message-ID | <[email protected]> |
Hi Vincent, FYI, the error/warning still remains. tree: https://android.googlesource.com/kernel/common android16-6.12-kminext head: 133d9641e9477c7e0c05a3fc18eb81d7579675b9 commit: 0a901ecd7f9ffbc4169811c90a0f26ed1ee1df7a [1/1] ANDROID: KVM: arm64: Rework pKVM module fault handler config: arm64-randconfig-004 (https://download.01.org/0day-ci/archive/20260717/[email protected]/config) compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 5c0dfced1adc55429e32b1db08570abd3a219d85) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260717/[email protected]/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 <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All warnings (new ones prefixed by >>): In file included from arch/arm64/kvm/hyp/nvhe/hyp-main.c:24: >> arch/arm64/kvm/hyp/include/nvhe/modules.h:31:6: warning: no previous prototype for function 'module_handle_host_perm_fault' [-Wmissing-prototypes] 31 | bool module_handle_host_perm_fault(struct user_pt_regs *regs, u64 esr, u64 addr) { return false; } | ^ arch/arm64/kvm/hyp/include/nvhe/modules.h:31:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 31 | bool module_handle_host_perm_fault(struct user_pt_regs *regs, u64 esr, u64 addr) { return false; } | ^ | static arch/arm64/kvm/hyp/nvhe/hyp-main.c:86:6: warning: no previous prototype for function '__pkvm_unmask_serror' [-Wmissing-prototypes] 86 | void __pkvm_unmask_serror(void) | ^ arch/arm64/kvm/hyp/nvhe/hyp-main.c:86:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 86 | void __pkvm_unmask_serror(void) | ^ | static arch/arm64/kvm/hyp/nvhe/hyp-main.c:472:22: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] 472 | [ESR_ELx_EC_WFx] = handle_pvm_entry_wfx, | ^~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:471:28: note: previous initialization is here 471 | [0 ... ESR_ELx_EC_MAX] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: expanded from macro 'NULL' 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:473:24: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] 473 | [ESR_ELx_EC_HVC64] = handle_pvm_entry_hvc64, | ^~~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:471:28: note: previous initialization is here 471 | [0 ... ESR_ELx_EC_MAX] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: expanded from macro 'NULL' 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:474:24: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] 474 | [ESR_ELx_EC_SYS64] = handle_pvm_entry_sys64, | ^~~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:471:28: note: previous initialization is here 471 | [0 ... ESR_ELx_EC_MAX] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: expanded from macro 'NULL' 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:475:27: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] 475 | [ESR_ELx_EC_IABT_LOW] = handle_pvm_entry_iabt, | ^~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:471:28: note: previous initialization is here 471 | [0 ... ESR_ELx_EC_MAX] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: expanded from macro 'NULL' 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:476:27: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] 476 | [ESR_ELx_EC_DABT_LOW] = handle_pvm_entry_dabt, | ^~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:471:28: note: previous initialization is here 471 | [0 ... ESR_ELx_EC_MAX] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: expanded from macro 'NULL' 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:481:22: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] 481 | [ESR_ELx_EC_WFx] = handle_pvm_exit_wfx, | ^~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:480:28: note: previous initialization is here 480 | [0 ... ESR_ELx_EC_MAX] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: expanded from macro 'NULL' 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:482:24: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] 482 | [ESR_ELx_EC_HVC64] = handle_pvm_exit_hvc64, | ^~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:480:28: note: previous initialization is here 480 | [0 ... ESR_ELx_EC_MAX] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: expanded from macro 'NULL' 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:483:24: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] 483 | [ESR_ELx_EC_SYS64] = handle_pvm_exit_sys64, | ^~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:480:28: note: previous initialization is here 480 | [0 ... ESR_ELx_EC_MAX] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: expanded from macro 'NULL' 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:484:27: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] 484 | [ESR_ELx_EC_IABT_LOW] = handle_pvm_exit_iabt, | ^~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:480:28: note: previous initialization is here 480 | [0 ... ESR_ELx_EC_MAX] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: expanded from macro 'NULL' 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:485:27: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides] 485 | [ESR_ELx_EC_DABT_LOW] = handle_pvm_exit_dabt, | ^~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:480:28: note: previous initialization is here 480 | [0 ... ESR_ELx_EC_MAX] = NULL, | ^~~~ -- In file included from arch/arm64/kvm/hyp/nvhe/mem_protect.c:23: >> arch/arm64/kvm/hyp/include/nvhe/modules.h:31:6: warning: no previous prototype for function 'module_handle_host_perm_fault' [-Wmissing-prototypes] 31 | bool module_handle_host_perm_fault(struct user_pt_regs *regs, u64 esr, u64 addr) { return false; } | ^ arch/arm64/kvm/hyp/include/nvhe/modules.h:31:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 31 | bool module_handle_host_perm_fault(struct user_pt_regs *regs, u64 esr, u64 addr) { return false; } | ^ | static 1 warning generated. vim +/module_handle_host_perm_fault +31 arch/arm64/kvm/hyp/include/nvhe/modules.h 14 15 #ifdef CONFIG_MODULES 16 int __pkvm_init_module(void *module_init); 17 int __pkvm_register_hcall(unsigned long hfn_hyp_va); 18 int handle_host_dynamic_hcall(struct user_pt_regs *regs, int id); 19 void __pkvm_close_module_registration(void); 20 bool module_handle_host_perm_fault(struct user_pt_regs *regs, u64 esr, u64 addr); 21 #else 22 static inline int __pkvm_init_module(void *module_init) { return -EOPNOTSUPP; } 23 static inline int 24 __pkvm_register_hcall(unsigned long hfn_hyp_va) { return -EOPNOTSUPP; } 25 static inline int 26 handle_host_dynamic_hcall(struct kvm_cpu_context *host_ctxt, int id) 27 { 28 return HCALL_UNHANDLED; 29 } 30 static inline void __pkvm_close_module_registration(void) { } > 31 bool module_handle_host_perm_fault(struct user_pt_regs *regs, u64 esr, u64 addr) { return false; } -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki