Re: [PATCH v3] f2fs: dax: implement direct access

From: kbuild test robot
Date: Thu Jun 08 2017 - 03:36:10 EST


Hi Qiuyang,

[auto build test WARNING on f2fs/dev]
[also build test WARNING on v4.12-rc4 next-20170607]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url: https://github.com/0day-ci/linux/commits/sunqiuyang/f2fs-dax-implement-direct-access/20170608-140734
base: https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git dev
config: i386-randconfig-x070-06040719 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=i386

All warnings (new ones prefixed by >>):

In file included from include/linux/linkage.h:4:0,
from include/linux/fs.h:4,
from fs/f2fs/gc.c:11:
fs/f2fs/gc.c: In function 'dax_move_data_page':
fs/f2fs/gc.c:731:40: error: 'struct f2fs_inode_info' has no member named 'i_mmap_sem'; did you mean 'i_sem'?
if (!down_write_trylock(&F2FS_I(inode)->i_mmap_sem))
^
include/linux/compiler.h:160:30: note: in definition of macro '__trace_if'
if (__builtin_constant_p(!!(cond)) ? !!(cond) : \
^~~~
>> fs/f2fs/gc.c:731:2: note: in expansion of macro 'if'
if (!down_write_trylock(&F2FS_I(inode)->i_mmap_sem))
^~
fs/f2fs/gc.c:731:40: error: 'struct f2fs_inode_info' has no member named 'i_mmap_sem'; did you mean 'i_sem'?
if (!down_write_trylock(&F2FS_I(inode)->i_mmap_sem))
^
include/linux/compiler.h:160:42: note: in definition of macro '__trace_if'
if (__builtin_constant_p(!!(cond)) ? !!(cond) : \
^~~~
>> fs/f2fs/gc.c:731:2: note: in expansion of macro 'if'
if (!down_write_trylock(&F2FS_I(inode)->i_mmap_sem))
^~
fs/f2fs/gc.c:731:40: error: 'struct f2fs_inode_info' has no member named 'i_mmap_sem'; did you mean 'i_sem'?
if (!down_write_trylock(&F2FS_I(inode)->i_mmap_sem))
^
include/linux/compiler.h:171:16: note: in definition of macro '__trace_if'
______r = !!(cond); \
^~~~
>> fs/f2fs/gc.c:731:2: note: in expansion of macro 'if'
if (!down_write_trylock(&F2FS_I(inode)->i_mmap_sem))
^~
fs/f2fs/gc.c:783:25: error: 'struct f2fs_inode_info' has no member named 'i_mmap_sem'; did you mean 'i_sem'?
up_write(&F2FS_I(inode)->i_mmap_sem);
^~

vim +/if +731 fs/f2fs/gc.c

715 long map_len;
716 pgoff_t pgoff;
717 void *kaddr_old, *kaddr_new;
718 pfn_t pfn;
719
720 if (blk_queue_dax(bdev->bd_queue))
721 dax_dev = dax_get_by_host(bdev->bd_disk->disk_name);
722 else
723 return;
724
725 if (!check_valid_map(sbi, segno, off))
726 return;
727
728 if (f2fs_is_atomic_file(inode))
729 return;
730
> 731 if (!down_write_trylock(&F2FS_I(inode)->i_mmap_sem))
732 return;
733
734 unmap_mapping_range(inode->i_mapping, (loff_t)bidx << PAGE_SHIFT,
735 PAGE_SIZE, 1);
736 /* find the old block address */
737 set_new_dnode(&dn, inode, NULL, NULL, 0);
738 err = get_dnode_of_data(&dn, bidx, LOOKUP_NODE);
739 if (err)

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip