arch/arm64/kernel/proton-pack.c:953 this_cpu_set_vectors() warn: unsigned 'slot' is never less than zero.

From: kernel test robot
Date: Sat Mar 12 2022 - 01:33:16 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 68453767131a5deec1e8f9ac92a9042f929e585d
commit: 558c303c9734af5a813739cd284879227f7297d2 arm64: Mitigate spectre style branch history side channels
date: 2 weeks ago
config: arm64-randconfig-m031-20220310 (https://download.01.org/0day-ci/archive/20220312/202203121458.ZX5wQMAu-lkp@xxxxxxxxx/config)
compiler: aarch64-linux-gcc (GCC) 11.2.0

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

smatch warnings:
arch/arm64/kernel/proton-pack.c:953 this_cpu_set_vectors() warn: unsigned 'slot' is never less than zero.

vim +/slot +953 arch/arm64/kernel/proton-pack.c

948
949 static void this_cpu_set_vectors(enum arm64_bp_harden_el1_vectors slot)
950 {
951 const char *v = arm64_get_bp_hardening_vector(slot);
952
> 953 if (slot < 0)
954 return;
955
956 __this_cpu_write(this_cpu_vector, v);
957
958 /*
959 * When KPTI is in use, the vectors are switched when exiting to
960 * user-space.
961 */
962 if (arm64_kernel_unmapped_at_el0())
963 return;
964
965 write_sysreg(v, vbar_el1);
966 isb();
967 }
968

---
0-DAY CI Kernel Test Service
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx