tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   0a50438c84363bd37fe18fe432888ae9a074dcab
commit: b344d6a83d01c52fddbefa6b3b4764da5b1022a0 parisc: add support for 
cmpxchg on u8 pointers
date:   9 months ago
config: parisc-randconfig-s031-20210406 (attached as .config)
compiler: hppa-linux-gcc (GCC) 9.3.0
reproduce:
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.3-279-g6d5d9b42-dirty
        # 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b344d6a83d01c52fddbefa6b3b4764da5b1022a0
        git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout b344d6a83d01c52fddbefa6b3b4764da5b1022a0
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 
CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=parisc 

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


sparse warnings: (new ones prefixed by >>)
   fs/erofs/zdata.c: note: in included file (through 
arch/parisc/include/asm/atomic.h, include/linux/atomic.h, 
arch/parisc/include/asm/bitops.h, ...):
>> arch/parisc/include/asm/cmpxchg.h:75:52: sparse: sparse: cast truncates bits 
>> from constant value (5f0ecafe becomes fe)
>> arch/parisc/include/asm/cmpxchg.h:75:52: sparse: sparse: cast truncates bits 
>> from constant value (5f0ecafe becomes fe)
>> arch/parisc/include/asm/cmpxchg.h:75:61: sparse: sparse: cast truncates bits 
>> from constant value (5f0edead becomes ad)

vim +75 arch/parisc/include/asm/cmpxchg.h

    64  
    65  /* don't worry...optimizer will get rid of most of this */
    66  static inline unsigned long
    67  __cmpxchg(volatile void *ptr, unsigned long old, unsigned long new_, 
int size)
    68  {
    69          switch (size) {
    70  #ifdef CONFIG_64BIT
    71          case 8: return __cmpxchg_u64((u64 *)ptr, old, new_);
    72  #endif
    73          case 4: return __cmpxchg_u32((unsigned int *)ptr,
    74                                       (unsigned int)old, (unsigned 
int)new_);
  > 75          case 1: return __cmpxchg_u8((u8 *)ptr, (u8)old, (u8)new_);
    76          }
    77          __cmpxchg_called_with_bad_pointer();
    78          return old;
    79  }
    80  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org

Attachment: .config.gz
Description: application/gzip

Reply via email to