lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Sat, 14 Aug 2021 07:11:07 +0800
From:   kernel test robot <lkp@...el.com>
To:     Will Deacon <will@...nel.org>
Cc:     clang-built-linux@...glegroups.com, kbuild-all@...ts.01.org,
        linux-kernel@...r.kernel.org
Subject: arch/arm64/kernel/proton-pack.c:558:13: warning: no previous
 prototype for function 'spectre_v4_patch_fw_mitigation_enable'

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   f8e6dfc64f6135d1b6c5215c14cd30b9b60a0008
commit: c28762070ca651fe7a981b8f31d972c9b7d2c386 arm64: Rewrite Spectre-v4 mitigation code
date:   11 months ago
config: arm64-randconfig-r013-20210814 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 62df4df41c939205b2dc0a2a3bfb75b8c1ed74fa)
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=clang make.cross ARCH=arm64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>

All warnings (new ones prefixed by >>):

   arch/arm64/kernel/proton-pack.c:288:2: error: implicit declaration of function 'install_bp_hardening_cb' [-Werror,-Wimplicit-function-declaration]
           install_bp_hardening_cb(cb);
           ^
   arch/arm64/kernel/proton-pack.c:304:2: error: implicit declaration of function 'install_bp_hardening_cb' [-Werror,-Wimplicit-function-declaration]
           install_bp_hardening_cb(qcom_link_stack_sanitisation);
           ^
>> arch/arm64/kernel/proton-pack.c:558:13: warning: no previous prototype for function 'spectre_v4_patch_fw_mitigation_enable' [-Wmissing-prototypes]
   void __init spectre_v4_patch_fw_mitigation_enable(struct alt_instr *alt,
               ^
   arch/arm64/kernel/proton-pack.c:558:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   void __init spectre_v4_patch_fw_mitigation_enable(struct alt_instr *alt,
   ^
   static 
>> arch/arm64/kernel/proton-pack.c:578:13: warning: no previous prototype for function 'spectre_v4_patch_fw_mitigation_conduit' [-Wmissing-prototypes]
   void __init spectre_v4_patch_fw_mitigation_conduit(struct alt_instr *alt,
               ^
   arch/arm64/kernel/proton-pack.c:578:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   void __init spectre_v4_patch_fw_mitigation_conduit(struct alt_instr *alt,
   ^
   static 
   2 warnings and 2 errors generated.


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@lists.01.org

Download attachment ".config.gz" of type "application/gzip" (38866 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ