[samba-ksmbd:for-next 26/26] fs/cifs/fscache.c:112:67: warning: passing argument 2 of 'bset_mem_set_bit' makes pointer from integer without a cast

From: kernel test robot
Date: Mon May 02 2022 - 21:10:27 EST


tree: git://git.samba.org/ksmbd.git for-next
head: 422ce10d22e2de32427ff611478747dd27af50f8
commit: 422ce10d22e2de32427ff611478747dd27af50f8 [26/26] mm, netfs, fscache: Stop read optimisation when folio removed from pagecache
config: m68k-allyesconfig (https://download.01.org/0day-ci/archive/20220503/202205030951.b4tycp85-lkp@xxxxxxxxx/config)
compiler: m68k-linux-gcc (GCC) 11.3.0
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
git remote add samba-ksmbd git://git.samba.org/ksmbd.git
git fetch --no-tags samba-ksmbd for-next
git checkout 422ce10d22e2de32427ff611478747dd27af50f8
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=m68k SHELL=/bin/bash fs/cifs/

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

All warnings (new ones prefixed by >>):

In file included from include/linux/bitops.h:33,
from include/linux/thread_info.h:27,
from include/asm-generic/preempt.h:5,
from ./arch/m68k/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:55,
from include/linux/swap.h:5,
from fs/cifs/fscache.h:12,
from fs/cifs/fscache.c:9:
fs/cifs/fscache.c: In function 'cifs_fscache_get_inode_cookie':
>> fs/cifs/fscache.c:112:67: warning: passing argument 2 of 'bset_mem_set_bit' makes pointer from integer without a cast [-Wint-conversion]
112 | set_bit(AS_NOTIFY_REMOVING_FOLIO, inode->i_mapping->flags);
| ~~~~~~~~~~~~~~~~^~~~~~~
| |
| long unsigned int
arch/m68k/include/asm/bitops.h:64:54: note: in definition of macro 'set_bit'
64 | bset_mem_set_bit(nr, vaddr) : \
| ^~~~~
arch/m68k/include/asm/bitops.h:41:69: note: expected 'volatile long unsigned int *' but argument is of type 'long unsigned int'
41 | static inline void bset_mem_set_bit(int nr, volatile unsigned long *vaddr)
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
>> fs/cifs/fscache.c:112:67: warning: passing argument 2 of 'bfset_mem_set_bit' makes pointer from integer without a cast [-Wint-conversion]
112 | set_bit(AS_NOTIFY_REMOVING_FOLIO, inode->i_mapping->flags);
| ~~~~~~~~~~~~~~~~^~~~~~~
| |
| long unsigned int
arch/m68k/include/asm/bitops.h:65:55: note: in definition of macro 'set_bit'
65 | bfset_mem_set_bit(nr, vaddr))
| ^~~~~
arch/m68k/include/asm/bitops.h:50:70: note: expected 'volatile long unsigned int *' but argument is of type 'long unsigned int'
50 | static inline void bfset_mem_set_bit(int nr, volatile unsigned long *vaddr)
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~


vim +/bset_mem_set_bit +112 fs/cifs/fscache.c

96
97 void cifs_fscache_get_inode_cookie(struct inode *inode)
98 {
99 struct cifs_fscache_inode_coherency_data cd;
100 struct cifsInodeInfo *cifsi = CIFS_I(inode);
101 struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb);
102 struct cifs_tcon *tcon = cifs_sb_master_tcon(cifs_sb);
103
104 cifs_fscache_fill_coherency(&cifsi->vfs_inode, &cd);
105
106 cifsi->netfs_ctx.cache =
107 fscache_acquire_cookie(tcon->fscache, 0,
108 &cifsi->uniqueid, sizeof(cifsi->uniqueid),
109 &cd, sizeof(cd),
110 i_size_read(&cifsi->vfs_inode));
111 if (cifsi->netfs_ctx.cache)
> 112 set_bit(AS_NOTIFY_REMOVING_FOLIO, inode->i_mapping->flags);
113

--
0-DAY CI Kernel Test Service
https://01.org/lkp