tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: 39676dfe52331dba909c617f213fdb21015c8d10 commit: 4a0d72ea10ce156eb2269358fa38528f62a96081 [6546/9925] afs: Overhaul invalidation handling to better support RO volumes config: loongarch-randconfig-r122-20231229 (https://download.01.org/0day-ci/archive/20231230/202312300218.jKdzoA8z-lkp@xxxxxxxxx/config) compiler: loongarch64-linux-gcc (GCC) 13.2.0 reproduce: (https://download.01.org/0day-ci/archive/20231230/202312300218.jKdzoA8z-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/202312300218.jKdzoA8z-lkp@xxxxxxxxx/ sparse warnings: (new ones prefixed by >>) fs/afs/callback.c: note: in included file (through include/linux/mmzone.h, include/linux/gfp.h, include/linux/umh.h, include/linux/kmod.h, ...): include/linux/page-flags.h:242:46: sparse: sparse: self-comparison always evaluates to false fs/afs/callback.c: note: in included file (through arch/loongarch/include/asm/atomic.h, include/linux/atomic.h, include/asm-generic/bitops/atomic.h, ...): >> arch/loongarch/include/asm/cmpxchg.h:70:42: sparse: sparse: cast truncates bits from constant value (8000000000000000 becomes 0) arch/loongarch/include/asm/cmpxchg.h:73:24: sparse: sparse: cast truncates bits from constant value (8000000000000000 becomes 0) fs/afs/callback.c:146:22: sparse: sparse: context imbalance in 'afs_lookup_volume_rcu' - different lock contexts for basic block -- fs/afs/rotate.c: note: in included file (through include/linux/mmzone.h, include/linux/gfp.h, include/linux/slab.h): include/linux/page-flags.h:242:46: sparse: sparse: self-comparison always evaluates to false fs/afs/rotate.c: note: in included file (through arch/loongarch/include/asm/atomic.h, include/linux/atomic.h, include/asm-generic/bitops/atomic.h, ...): >> arch/loongarch/include/asm/cmpxchg.h:70:42: sparse: sparse: cast truncates bits from constant value (8000000000000000 becomes 0) arch/loongarch/include/asm/cmpxchg.h:73:24: sparse: sparse: cast truncates bits from constant value (8000000000000000 becomes 0) fs/afs/rotate.c:639:42: sparse: sparse: self-comparison always evaluates to true vim +70 arch/loongarch/include/asm/cmpxchg.h 720dc7ab252bbd Huacai Chen 2022-08-25 63 ddf502717da029 Huacai Chen 2022-10-12 64 static __always_inline unsigned long 068550631fbe0b Andrzej Hajda 2023-01-18 65 __arch_xchg(volatile void *ptr, unsigned long x, int size) 5b0b14e550a006 Huacai Chen 2022-05-31 66 { 5b0b14e550a006 Huacai Chen 2022-05-31 67 switch (size) { 720dc7ab252bbd Huacai Chen 2022-08-25 68 case 1: 720dc7ab252bbd Huacai Chen 2022-08-25 69 case 2: 720dc7ab252bbd Huacai Chen 2022-08-25 @70 return __xchg_small(ptr, x, size); 720dc7ab252bbd Huacai Chen 2022-08-25 71 5b0b14e550a006 Huacai Chen 2022-05-31 72 case 4: 5b0b14e550a006 Huacai Chen 2022-05-31 73 return __xchg_asm("amswap_db.w", (volatile u32 *)ptr, (u32)x); 5b0b14e550a006 Huacai Chen 2022-05-31 74 5b0b14e550a006 Huacai Chen 2022-05-31 75 case 8: 5b0b14e550a006 Huacai Chen 2022-05-31 76 return __xchg_asm("amswap_db.d", (volatile u64 *)ptr, (u64)x); 5b0b14e550a006 Huacai Chen 2022-05-31 77 5b0b14e550a006 Huacai Chen 2022-05-31 78 default: 5b0b14e550a006 Huacai Chen 2022-05-31 79 BUILD_BUG(); 5b0b14e550a006 Huacai Chen 2022-05-31 80 } 5b0b14e550a006 Huacai Chen 2022-05-31 81 5b0b14e550a006 Huacai Chen 2022-05-31 82 return 0; 5b0b14e550a006 Huacai Chen 2022-05-31 83 } 5b0b14e550a006 Huacai Chen 2022-05-31 84 :::::: The code at line 70 was first introduced by commit :::::: 720dc7ab252bbdf404cab7b909e26b31e602bf7e LoongArch: Add subword xchg/cmpxchg emulation :::::: TO: Huacai Chen <chenhuacai@xxxxxxxxxxx> :::::: CC: Huacai Chen <chenhuacai@xxxxxxxxxxx> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki