Shida Zhang 44159659df 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>
2022-10-04 16:39:42 +11:00
..
2022-01-15 16:30:29 +02:00
2021-10-22 16:00:31 -07:00
2022-04-26 13:34:42 +10:00
2022-07-22 10:58:39 -07:00
2022-05-11 17:01:23 +10:00
2022-08-13 13:50:11 -07:00
2022-05-11 17:01:22 +10:00
2022-06-23 13:34:38 -07:00
2022-07-17 17:14:32 -07:00
2022-08-04 20:19:16 -07:00
2022-08-13 13:50:11 -07:00
2022-05-11 17:01:22 +10:00
2022-05-11 17:01:22 +10:00
2021-08-19 10:07:14 -07:00