aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/libxfs/xfs_dir2.c
diff options
context:
space:
mode:
authorShida Zhang <zhangshida@kylinos.cn>2022-10-04 16:39:42 +1100
committerDave Chinner <david@fromorbit.com>2022-10-04 16:39:42 +1100
commit44159659df8ca381b84261e11058b2176fa03ba0 (patch)
treee97f2b341f200ae8ef29babfa377290aa91a0e3b /fs/xfs/libxfs/xfs_dir2.c
parentxfs: do not need to check return value of xlog_kvmalloc() (diff)
downloadlinux-dev-44159659df8ca381b84261e11058b2176fa03ba0.tar.xz
linux-dev-44159659df8ca381b84261e11058b2176fa03ba0.zip
xfs: trim the mapp array accordingly in xfs_da_grow_inode_int
Take a look at the for-loop in xfs_da_grow_inode_int: ====== for(){ nmap = min(XFS_BMAP_MAX_NMAP, count); ... error = xfs_bmapi_write(...,&mapp[mapi], &nmap);//(..., $1, $2) ... mapi += nmap; } ===== where $1 stands for the start address of the array, while $2 is used to indicate the size of the array. The array $1 will advance by $nmap in each iteration after the allocation of extents. But the size $2 still remains unchanged, which is determined by min(XFS_BMAP_MAX_NMAP, count). It seems that it has forgotten to trim the mapp array after each iteration, so change it. Signed-off-by: Shida Zhang <zhangshida@kylinos.cn> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'fs/xfs/libxfs/xfs_dir2.c')
0 files changed, 0 insertions, 0 deletions