[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202303241950.C1ApLyal-lkp@intel.com>
Date: Fri, 24 Mar 2023 19:57:25 +0800
From: kernel test robot <lkp@...el.com>
To: Chung-Chiang Cheng <cccheng@...ology.com>,
linux-ext4@...r.kernel.org, tytso@....edu,
adilger.kernel@...ger.ca, jack@...e.cz, yi.zhang@...wei.com
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
shepjeng@...il.com, kernel@...heng.net,
Chung-Chiang Cheng <cccheng@...ology.com>,
Robbie Ko <robbieko@...ology.com>
Subject: Re: [PATCH] ext4: defer updating i_disksize until endio
Hi Chung-Chiang,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on v6.3-rc3]
[also build test WARNING on linus/master]
[cannot apply to tytso-ext4/dev next-20230324]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Chung-Chiang-Cheng/ext4-defer-updating-i_disksize-until-endio/20230324-173716
patch link: https://lore.kernel.org/r/20230324092907.1341457-1-cccheng%40synology.com
patch subject: [PATCH] ext4: defer updating i_disksize until endio
config: x86_64-randconfig-a014 (https://download.01.org/0day-ci/archive/20230324/202303241950.C1ApLyal-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
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
# https://github.com/intel-lab-lkp/linux/commit/9a02b364d2cffe71a45866edf750b0280c8cb990
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Chung-Chiang-Cheng/ext4-defer-updating-i_disksize-until-endio/20230324-173716
git checkout 9a02b364d2cffe71a45866edf750b0280c8cb990
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash fs/ext4/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202303241950.C1ApLyal-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> fs/ext4/inode.c:3115:23: warning: variable 'end' set but not used [-Wunused-but-set-variable]
unsigned long start, end;
^
1 warning generated.
vim +/end +3115 fs/ext4/inode.c
64769240bd07f4 Alex Tomas 2008-07-11 3108
64769240bd07f4 Alex Tomas 2008-07-11 3109 static int ext4_da_write_end(struct file *file,
64769240bd07f4 Alex Tomas 2008-07-11 3110 struct address_space *mapping,
64769240bd07f4 Alex Tomas 2008-07-11 3111 loff_t pos, unsigned len, unsigned copied,
64769240bd07f4 Alex Tomas 2008-07-11 3112 struct page *page, void *fsdata)
64769240bd07f4 Alex Tomas 2008-07-11 3113 {
64769240bd07f4 Alex Tomas 2008-07-11 3114 struct inode *inode = mapping->host;
632eaeab1feb5d Mingming Cao 2008-07-11 @3115 unsigned long start, end;
79f0be8d2e6ebd Aneesh Kumar K.V 2008-10-08 3116 int write_mode = (int)(unsigned long)fsdata;
79f0be8d2e6ebd Aneesh Kumar K.V 2008-10-08 3117
74d553aad7926e Theodore Ts'o 2013-04-03 3118 if (write_mode == FALL_BACK_TO_NONDELALLOC)
74d553aad7926e Theodore Ts'o 2013-04-03 3119 return ext4_write_end(file, mapping, pos,
79f0be8d2e6ebd Aneesh Kumar K.V 2008-10-08 3120 len, copied, page, fsdata);
632eaeab1feb5d Mingming Cao 2008-07-11 3121
9bffad1ed2a003 Theodore Ts'o 2009-06-17 3122 trace_ext4_da_write_end(inode, pos, len, copied);
6984aef59814fb Zhang Yi 2021-07-16 3123
6984aef59814fb Zhang Yi 2021-07-16 3124 if (write_mode != CONVERT_INLINE_DATA &&
6984aef59814fb Zhang Yi 2021-07-16 3125 ext4_test_inode_state(inode, EXT4_STATE_MAY_INLINE_DATA) &&
6984aef59814fb Zhang Yi 2021-07-16 3126 ext4_has_inline_data(inode))
6984aef59814fb Zhang Yi 2021-07-16 3127 return ext4_write_inline_data_end(inode, pos, len, copied, page);
6984aef59814fb Zhang Yi 2021-07-16 3128
09cbfeaf1a5a67 Kirill A. Shutemov 2016-04-01 3129 start = pos & (PAGE_SIZE - 1);
632eaeab1feb5d Mingming Cao 2008-07-11 3130 end = start + copied - 1;
64769240bd07f4 Alex Tomas 2008-07-11 3131
64769240bd07f4 Alex Tomas 2008-07-11 3132 /*
4df031ff5876d9 Zhang Yi 2021-07-16 3133 * Since we are holding inode lock, we are sure i_disksize <=
4df031ff5876d9 Zhang Yi 2021-07-16 3134 * i_size. We also know that if i_disksize < i_size, there are
9a02b364d2cffe Chung-Chiang Cheng 2023-03-24 3135 * delalloc writes pending in the range upto i_size. There's no
9a02b364d2cffe Chung-Chiang Cheng 2023-03-24 3136 * need to touch i_disksize since the endio of writeback will
9a02b364d2cffe Chung-Chiang Cheng 2023-03-24 3137 * push i_disksize upto i_size eventually.
4df031ff5876d9 Zhang Yi 2021-07-16 3138 *
4df031ff5876d9 Zhang Yi 2021-07-16 3139 * Note that we defer inode dirtying to generic_write_end() /
4df031ff5876d9 Zhang Yi 2021-07-16 3140 * ext4_da_write_inline_data_end().
64769240bd07f4 Alex Tomas 2008-07-11 3141 */
9c3569b50f12e4 Tao Ma 2012-12-10 3142
cc883236b79297 Zhang Yi 2021-07-16 3143 return generic_write_end(file, mapping, pos, len, copied, page, fsdata);
64769240bd07f4 Alex Tomas 2008-07-11 3144 }
64769240bd07f4 Alex Tomas 2008-07-11 3145
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
Powered by blists - more mailing lists