CC: kbuild-all(a)lists.01.org In-Reply-To: <20210604011844.1756145-9-ruansy.fnst@fujitsu.com> References: <20210604011844.1756145-9-ruansy.fnst@fujitsu.com> TO: Shiyang Ruan TO: linux-kernel(a)vger.kernel.org TO: linux-xfs(a)vger.kernel.org TO: linux-nvdimm(a)lists.01.org TO: linux-mm(a)kvack.org TO: linux-fsdevel(a)vger.kernel.org TO: dm-devel(a)redhat.com CC: darrick.wong(a)oracle.com CC: dan.j.williams(a)intel.com CC: david(a)fromorbit.com CC: hch(a)lst.de Hi Shiyang, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on xfs-linux/for-next] [also build test WARNING on dm/for-next linus/master v5.13-rc4] [cannot apply to hnaz-linux-mm/master next-20210603] [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] url: https://github.com/0day-ci/linux/commits/Shiyang-Ruan/fsdax-introduce-fs-query-to-support-reflink/20210604-092105 base: https://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git for-next :::::: branch date: 5 hours ago :::::: commit date: 5 hours ago config: i386-randconfig-s001-20210604 (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.3-341-g8af24329-dirty # https://github.com/0day-ci/linux/commit/94db8a17905296e4d5bfe93eb5199f477646622a git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Shiyang-Ruan/fsdax-introduce-fs-query-to-support-reflink/20210604-092105 git checkout 94db8a17905296e4d5bfe93eb5199f477646622a # save the attached .config to linux build tree make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=i386 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) >> drivers/md/dm.c:1300:12: sparse: sparse: context imbalance in 'dm_dax_corrputed_range_one' - different lock contexts for basic block vim +/dm_dax_corrputed_range_one +1300 drivers/md/dm.c 94db8a17905296 Shiyang Ruan 2021-06-04 1299 94db8a17905296 Shiyang Ruan 2021-06-04 @1300 static int dm_dax_corrputed_range_one(struct mapped_device *md, 94db8a17905296 Shiyang Ruan 2021-06-04 1301 struct block_device *bdev, loff_t offset, 94db8a17905296 Shiyang Ruan 2021-06-04 1302 size_t length, void *data) 94db8a17905296 Shiyang Ruan 2021-06-04 1303 { 94db8a17905296 Shiyang Ruan 2021-06-04 1304 struct dm_table *map; 94db8a17905296 Shiyang Ruan 2021-06-04 1305 struct dm_target *ti; 94db8a17905296 Shiyang Ruan 2021-06-04 1306 sector_t sect = to_sector(offset); 94db8a17905296 Shiyang Ruan 2021-06-04 1307 struct corrupted_hit_info hi = {bdev, sect}; 94db8a17905296 Shiyang Ruan 2021-06-04 1308 struct corrupted_do_info di = {length, data}; 94db8a17905296 Shiyang Ruan 2021-06-04 1309 int srcu_idx, i, rc = -ENODEV; 94db8a17905296 Shiyang Ruan 2021-06-04 1310 94db8a17905296 Shiyang Ruan 2021-06-04 1311 map = dm_get_live_table(md, &srcu_idx); 94db8a17905296 Shiyang Ruan 2021-06-04 1312 if (!map) 94db8a17905296 Shiyang Ruan 2021-06-04 1313 return rc; 94db8a17905296 Shiyang Ruan 2021-06-04 1314 94db8a17905296 Shiyang Ruan 2021-06-04 1315 /* 94db8a17905296 Shiyang Ruan 2021-06-04 1316 * find the target device, and then translate the offset of this target 94db8a17905296 Shiyang Ruan 2021-06-04 1317 * to the whole mapped device. 94db8a17905296 Shiyang Ruan 2021-06-04 1318 */ 94db8a17905296 Shiyang Ruan 2021-06-04 1319 for (i = 0; i < dm_table_get_num_targets(map); i++) { 94db8a17905296 Shiyang Ruan 2021-06-04 1320 ti = dm_table_get_target(map, i); 94db8a17905296 Shiyang Ruan 2021-06-04 1321 if (!(ti->type->iterate_devices && ti->type->rmap)) 94db8a17905296 Shiyang Ruan 2021-06-04 1322 continue; 94db8a17905296 Shiyang Ruan 2021-06-04 1323 if (!ti->type->iterate_devices(ti, dm_blk_corrupted_hit, &hi)) 94db8a17905296 Shiyang Ruan 2021-06-04 1324 continue; 94db8a17905296 Shiyang Ruan 2021-06-04 1325 94db8a17905296 Shiyang Ruan 2021-06-04 1326 rc = ti->type->rmap(ti, sect, dm_blk_corrupted_do, &di); 94db8a17905296 Shiyang Ruan 2021-06-04 1327 break; 94db8a17905296 Shiyang Ruan 2021-06-04 1328 } 94db8a17905296 Shiyang Ruan 2021-06-04 1329 94db8a17905296 Shiyang Ruan 2021-06-04 1330 dm_put_live_table(md, srcu_idx); 94db8a17905296 Shiyang Ruan 2021-06-04 1331 return rc; 94db8a17905296 Shiyang Ruan 2021-06-04 1332 } 94db8a17905296 Shiyang Ruan 2021-06-04 1333 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org