tree:
git://git.infradead.org/users/hch/misc.git dax-block-cleanup
head: 66907b1fedc7f04eadf903bb484c55901b96298c
commit: c33e2c44d0f96e5849d131ad472e7ed58bd6f23b [18/29] fsdax: decouple zeroing from the
iomap buffered I/O code
config: ia64-buildonly-randconfig-r002-20211123
(
https://download.01.org/0day-ci/archive/20211124/202111240110.kx7cgC4E-lk...)
compiler: ia64-linux-gcc (GCC) 11.2.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 hch-misc
git://git.infradead.org/users/hch/misc.git
git fetch --no-tags hch-misc dax-block-cleanup
git checkout c33e2c44d0f96e5849d131ad472e7ed58bd6f23b
# save the config file to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=ia64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from arch/ia64/include/asm/pgtable.h:153,
from include/linux/pgtable.h:6,
from arch/ia64/include/asm/uaccess.h:40,
from include/linux/uaccess.h:11,
from include/linux/sched/task.h:11,
from include/linux/sched/signal.h:9,
from include/linux/rcuwait.h:6,
from include/linux/percpu-rwsem.h:7,
from include/linux/fs.h:33,
from fs/ext4/inode.c:22:
arch/ia64/include/asm/mmu_context.h: In function 'reload_context':
arch/ia64/include/asm/mmu_context.h:127:48: warning: variable 'old_rr4' set but
not used [-Wunused-but-set-variable]
127 | unsigned long rr0, rr1, rr2, rr3, rr4, old_rr4;
| ^~~~~~~
fs/ext4/inode.c: In function 'ext4_block_zero_page_range':
> fs/ext4/inode.c:3784:24: error: implicit declaration of function
'dax_zero_range'; did you mean 'iomap_zero_range'?
[-Werror=implicit-function-declaration]
3784 | return
dax_zero_range(inode, from, length, NULL,
| ^~~~~~~~~~~~~~
| iomap_zero_range
cc1: some warnings being treated as errors
--
In file included from arch/ia64/include/asm/pgtable.h:153,
from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from fs/xfs/kmem.h:11,
from fs/xfs/xfs_linux.h:24,
from fs/xfs/xfs.h:22,
from fs/xfs/xfs_iomap.c:7:
arch/ia64/include/asm/mmu_context.h: In function 'reload_context':
arch/ia64/include/asm/mmu_context.h:127:48: warning: variable 'old_rr4' set but
not used [-Wunused-but-set-variable]
127 | unsigned long rr0, rr1, rr2, rr3, rr4, old_rr4;
| ^~~~~~~
fs/xfs/xfs_iomap.c: In function 'xfs_zero_range':
> fs/xfs/xfs_iomap.c:1325:24: error: implicit declaration of
function 'dax_zero_range'; did you mean 'xfs_zero_range'?
[-Werror=implicit-function-declaration]
1325 | return
dax_zero_range(inode, pos, len, did_zero,
| ^~~~~~~~~~~~~~
| xfs_zero_range
fs/xfs/xfs_iomap.c: In function 'xfs_truncate_page':
> fs/xfs/xfs_iomap.c:1340:24: error: implicit declaration of
function 'dax_truncate_page'; did you mean 'xfs_truncate_page'?
[-Werror=implicit-function-declaration]
1340 | return
dax_truncate_page(inode, pos, did_zero,
| ^~~~~~~~~~~~~~~~~
| xfs_truncate_page
cc1: some warnings being treated as errors
vim +3784 fs/ext4/inode.c
3760
3761 /*
3762 * ext4_block_zero_page_range() zeros out a mapping of length 'length'
3763 * starting from file offset 'from'. The range to be zero'd must
3764 * be contained with in one block. If the specified range exceeds
3765 * the end of the block it will be shortened to end of the block
3766 * that corresponds to 'from'
3767 */
3768 static int ext4_block_zero_page_range(handle_t *handle,
3769 struct address_space *mapping, loff_t from, loff_t length)
3770 {
3771 struct inode *inode = mapping->host;
3772 unsigned offset = from & (PAGE_SIZE-1);
3773 unsigned blocksize = inode->i_sb->s_blocksize;
3774 unsigned max = blocksize - (offset & (blocksize - 1));
3775
3776 /*
3777 * correct length if it does not fall between
3778 * 'from' and the end of the block
3779 */
3780 if (length > max || length < 0)
3781 length = max;
3782
3783 if (IS_DAX(inode)) {
3784 return dax_zero_range(inode, from, length, NULL,
3785 &ext4_iomap_ops);
3786 }
3787 return __ext4_block_zero_page_range(handle, mapping, from, length);
3788 }
3789
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org