arch/riscv/net/bpf_jit.h:241:30: sparse: sparse: cast truncates bits from constant value (7ff becomes ff)

From: kernel test robot
Date: Tue Jul 25 2023 - 19:34:47 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: af2e19389c2c1d8a299e04c5105b180ef0c5b5b5
commit: 2d311f480b52eeb2e1fd432d64b78d82952c3808 riscv, bpf: Fix patch_text implicit declaration
date: 5 months ago
config: riscv-randconfig-r072-20230725 (https://download.01.org/0day-ci/archive/20230726/202307260704.dUElCrWU-lkp@xxxxxxxxx/config)
compiler: riscv64-linux-gcc (GCC) 12.3.0
reproduce: (https://download.01.org/0day-ci/archive/20230726/202307260704.dUElCrWU-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/202307260704.dUElCrWU-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
WARNING: invalid argument to '-march': '_zicbom_zihintpause'
arch/riscv/net/bpf_jit_comp64.c: note: in included file:
>> arch/riscv/net/bpf_jit.h:241:30: sparse: sparse: cast truncates bits from constant value (7ff becomes ff)

vim +241 arch/riscv/net/bpf_jit.h

ca6cb5447ceca6 Luke Nelson 2020-03-04 238
ca6cb5447ceca6 Luke Nelson 2020-03-04 239 static inline u32 rv_s_insn(u16 imm11_0, u8 rs2, u8 rs1, u8 funct3, u8 opcode)
ca6cb5447ceca6 Luke Nelson 2020-03-04 240 {
ca6cb5447ceca6 Luke Nelson 2020-03-04 @241 u8 imm11_5 = imm11_0 >> 5, imm4_0 = imm11_0 & 0x1f;
ca6cb5447ceca6 Luke Nelson 2020-03-04 242
ca6cb5447ceca6 Luke Nelson 2020-03-04 243 return (imm11_5 << 25) | (rs2 << 20) | (rs1 << 15) | (funct3 << 12) |
ca6cb5447ceca6 Luke Nelson 2020-03-04 244 (imm4_0 << 7) | opcode;
ca6cb5447ceca6 Luke Nelson 2020-03-04 245 }
ca6cb5447ceca6 Luke Nelson 2020-03-04 246

:::::: The code at line 241 was first introduced by commit
:::::: ca6cb5447ceca6a87d6b62c9e5d41042c34f7ffa riscv, bpf: Factor common RISC-V JIT code

:::::: TO: Luke Nelson <lukenels@xxxxxxxxxxxxxxxxx>
:::::: CC: Daniel Borkmann <daniel@xxxxxxxxxxxxx>

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