arch/arm64/kernel/proton-pack.c:558:13: warning: no previous prototype for 'spectre_v4_patch_fw_mitigation_enable'
From: kernel test robot
Date: Sat Mar 27 2021 - 16:35:57 EST
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 0f4498cef9f5cd18d7c6639a2a902ec1edc5be4e
commit: c28762070ca651fe7a981b8f31d972c9b7d2c386 arm64: Rewrite Spectre-v4 mitigation code
date: 6 months ago
config: arm64-randconfig-r011-20210328 (attached as .config)
compiler: aarch64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c28762070ca651fe7a981b8f31d972c9b7d2c386
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout c28762070ca651fe7a981b8f31d972c9b7d2c386
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>
All warnings (new ones prefixed by >>):
arch/arm64/kernel/proton-pack.c: In function 'spectre_v2_enable_fw_mitigation':
arch/arm64/kernel/proton-pack.c:288:2: error: implicit declaration of function 'install_bp_hardening_cb' [-Werror=implicit-function-declaration]
288 | install_bp_hardening_cb(cb);
| ^~~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kernel/proton-pack.c: At top level:
>> arch/arm64/kernel/proton-pack.c:558:13: warning: no previous prototype for 'spectre_v4_patch_fw_mitigation_enable' [-Wmissing-prototypes]
558 | void __init spectre_v4_patch_fw_mitigation_enable(struct alt_instr *alt,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> arch/arm64/kernel/proton-pack.c:578:13: warning: no previous prototype for 'spectre_v4_patch_fw_mitigation_conduit' [-Wmissing-prototypes]
578 | void __init spectre_v4_patch_fw_mitigation_conduit(struct alt_instr *alt,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/spectre_v4_patch_fw_mitigation_enable +558 arch/arm64/kernel/proton-pack.c
553
554 /*
555 * Patch a branch over the Spectre-v4 mitigation code with a NOP so that
556 * we fallthrough and check whether firmware needs to be called on this CPU.
557 */
> 558 void __init spectre_v4_patch_fw_mitigation_enable(struct alt_instr *alt,
559 __le32 *origptr,
560 __le32 *updptr, int nr_inst)
561 {
562 BUG_ON(nr_inst != 1); /* Branch -> NOP */
563
564 if (spectre_v4_mitigations_off())
565 return;
566
567 if (cpus_have_final_cap(ARM64_SSBS))
568 return;
569
570 if (spectre_v4_mitigations_dynamic())
571 *updptr = cpu_to_le32(aarch64_insn_gen_nop());
572 }
573
574 /*
575 * Patch a NOP in the Spectre-v4 mitigation code with an SMC/HVC instruction
576 * to call into firmware to adjust the mitigation state.
577 */
> 578 void __init spectre_v4_patch_fw_mitigation_conduit(struct alt_instr *alt,
579 __le32 *origptr,
580 __le32 *updptr, int nr_inst)
581 {
582 u32 insn;
583
584 BUG_ON(nr_inst != 1); /* NOP -> HVC/SMC */
585
586 switch (arm_smccc_1_1_get_conduit()) {
587 case SMCCC_CONDUIT_HVC:
588 insn = aarch64_insn_get_hvc_value();
589 break;
590 case SMCCC_CONDUIT_SMC:
591 insn = aarch64_insn_get_smc_value();
592 break;
593 default:
594 return;
595 }
596
597 *updptr = cpu_to_le32(insn);
598 }
599
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip