Hi Christoph, kernel test robot noticed the following build warnings: [auto build test WARNING on xfs-linux/for-next] [also build test WARNING on akpm-mm/mm-nonmm-unstable linus/master v6.11-rc3 next-20240813] [cannot apply to djwong-xfs/djwong-devel] [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/Christoph-Hellwig/xfs-convert-perag-lookup-to-xarray/20240812-183447 base: https://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git for-next patch link: https://lore.kernel.org/r/20240812063143.3806677-3-hch%40lst.de patch subject: [PATCH 2/3] xfs: convert perag lookup to xarray config: x86_64-randconfig-122-20240813 (https://download.01.org/0day-ci/archive/20240813/202408131403.L5SrjEa7-lkp@xxxxxxxxx/config) compiler: gcc-11 (Debian 11.3.0-12) 11.3.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240813/202408131403.L5SrjEa7-lkp@xxxxxxxxx/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202408131403.L5SrjEa7-lkp@xxxxxxxxx/ sparse warnings: (new ones prefixed by >>) >> fs/xfs/xfs_icache.c:1776:9: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted xa_mark_t [usertype] @@ got unsigned int enum xfs_icwalk_goal goal @@ fs/xfs/xfs_icache.c:1776:9: sparse: expected restricted xa_mark_t [usertype] fs/xfs/xfs_icache.c:1776:9: sparse: got unsigned int enum xfs_icwalk_goal goal >> fs/xfs/xfs_icache.c:1776:9: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted xa_mark_t [usertype] @@ got unsigned int enum xfs_icwalk_goal goal @@ fs/xfs/xfs_icache.c:1776:9: sparse: expected restricted xa_mark_t [usertype] fs/xfs/xfs_icache.c:1776:9: sparse: got unsigned int enum xfs_icwalk_goal goal >> fs/xfs/xfs_icache.c:244:51: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected restricted xa_mark_t [usertype] @@ got unsigned int tag @@ fs/xfs/xfs_icache.c:244:51: sparse: expected restricted xa_mark_t [usertype] fs/xfs/xfs_icache.c:244:51: sparse: got unsigned int tag fs/xfs/xfs_icache.c:286:53: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected restricted xa_mark_t [usertype] @@ got unsigned int tag @@ fs/xfs/xfs_icache.c:286:53: sparse: expected restricted xa_mark_t [usertype] fs/xfs/xfs_icache.c:286:53: sparse: got unsigned int tag >> fs/xfs/xfs_icache.c:1379:9: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted xa_mark_t [usertype] @@ got int @@ fs/xfs/xfs_icache.c:1379:9: sparse: expected restricted xa_mark_t [usertype] fs/xfs/xfs_icache.c:1379:9: sparse: got int >> fs/xfs/xfs_icache.c:1379:9: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted xa_mark_t [usertype] @@ got int @@ fs/xfs/xfs_icache.c:1379:9: sparse: expected restricted xa_mark_t [usertype] fs/xfs/xfs_icache.c:1379:9: sparse: got int fs/xfs/xfs_icache.c:1509:9: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted xa_mark_t [usertype] @@ got int @@ fs/xfs/xfs_icache.c:1509:9: sparse: expected restricted xa_mark_t [usertype] fs/xfs/xfs_icache.c:1509:9: sparse: got int fs/xfs/xfs_icache.c:1509:9: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted xa_mark_t [usertype] @@ got int @@ fs/xfs/xfs_icache.c:1509:9: sparse: expected restricted xa_mark_t [usertype] fs/xfs/xfs_icache.c:1509:9: sparse: got int fs/xfs/xfs_icache.c:1515:9: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted xa_mark_t [usertype] @@ got int @@ fs/xfs/xfs_icache.c:1515:9: sparse: expected restricted xa_mark_t [usertype] fs/xfs/xfs_icache.c:1515:9: sparse: got int fs/xfs/xfs_icache.c:1515:9: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted xa_mark_t [usertype] @@ got int @@ fs/xfs/xfs_icache.c:1515:9: sparse: expected restricted xa_mark_t [usertype] fs/xfs/xfs_icache.c:1515:9: sparse: got int fs/xfs/xfs_icache.c: note: in included file (through include/linux/rbtree.h, include/linux/mm_types.h, include/linux/mmzone.h, ...): include/linux/rcupdate.h:869:25: sparse: sparse: context imbalance in 'xfs_iget_recycle' - unexpected unlock fs/xfs/xfs_icache.c:580:28: sparse: sparse: context imbalance in 'xfs_iget_cache_hit' - different lock contexts for basic block vim +1776 fs/xfs/xfs_icache.c 1762 1763 /* Walk all incore inodes to achieve a given goal. */ 1764 static int 1765 xfs_icwalk( 1766 struct xfs_mount *mp, 1767 enum xfs_icwalk_goal goal, 1768 struct xfs_icwalk *icw) 1769 { 1770 struct xfs_perag *pag; 1771 int error = 0; 1772 int last_error = 0; 1773 unsigned long index = 0; 1774 1775 rcu_read_lock(); > 1776 xa_for_each_marked(&mp->m_perags, index, pag, goal) { 1777 if (!atomic_inc_not_zero(&pag->pag_active_ref)) 1778 continue; 1779 rcu_read_unlock(); 1780 1781 error = xfs_icwalk_ag(pag, goal, icw); 1782 xfs_perag_rele(pag); 1783 1784 rcu_read_lock(); 1785 if (error) { 1786 last_error = error; 1787 if (error == -EFSCORRUPTED) 1788 break; 1789 } 1790 } 1791 rcu_read_unlock(); 1792 1793 return last_error; 1794 BUILD_BUG_ON(XFS_ICWALK_PRIVATE_FLAGS & XFS_ICWALK_FLAGS_VALID); 1795 } 1796 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki