Re: [PATCH 3/9] xfs: remove the extsize argument to xfs_eof_alignment

Darrick J. Wong
2019-10-30T19:36:21Z

On Wed, Oct 30, 2019 at 11:04:13AM -0700, Christoph Hellwig wrote:
> And move the code dependent on it to the one caller that cares
> instead.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>

Looks ok,
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>

--D

> ---
> fs/xfs/xfs_iomap.c | 28 +++++++++++++---------------
> 1 file changed, 13 insertions(+), 15 deletions(-)
>
> diff --git a/fs/xfs/xfs_iomap.c b/fs/xfs/xfs_iomap.c
> index 02526cffc5a3..c21c4f7a7389 100644
> --- a/fs/xfs/xfs_iomap.c
> +++ b/fs/xfs/xfs_iomap.c
> @@ -118,8 +118,7 @@ xfs_iomap_end_fsb(
>
> static xfs_extlen_t
> xfs_eof_alignment(
> - struct xfs_inode *ip,
> - xfs_extlen_t extsize)
> + struct xfs_inode *ip)
> {
> struct xfs_mount *mp = ip->i_mount;
> xfs_extlen_t align = 0;
> @@ -142,17 +141,6 @@ xfs_eof_alignment(
> align = 0;
> }
>
> - /*
> - * Always round up the allocation request to an extent boundary
> - * (when file on a real-time subvolume or has di_extsize hint).
> - */
> - if (extsize) {
> - if (align)
> - align = roundup_64(align, extsize);
> - else
> - align = extsize;
> - }
> -
> return align;
> }
>
> @@ -167,12 +155,22 @@ xfs_iomap_eof_align_last_fsb(
> {
> struct xfs_ifork *ifp = XFS_IFORK_PTR(ip, XFS_DATA_FORK);
> xfs_extlen_t extsz = xfs_get_extsz_hint(ip);
> - xfs_extlen_t align = xfs_eof_alignment(ip, extsz);
> + xfs_extlen_t align = xfs_eof_alignment(ip);
> struct xfs_bmbt_irec irec;
> struct xfs_iext_cursor icur;
>
> ASSERT(ifp->if_flags & XFS_IFEXTENTS);
>
> + /*
> + * Always round up the allocation request to the extent hint boundary.
> + */
> + if (extsz) {
> + if (align)
> + align = roundup_64(align, extsz);
> + else
> + align = extsz;
> + }
> +
> if (align) {
> xfs_fileoff_t aligned_end_fsb = roundup_64(end_fsb, align);
>
> @@ -992,7 +990,7 @@ xfs_buffered_write_iomap_begin(
> p_end_fsb = XFS_B_TO_FSBT(mp, end_offset) +
> prealloc_blocks;
>
> - align = xfs_eof_alignment(ip, 0);
> + align = xfs_eof_alignment(ip);
> if (align)
> p_end_fsb = roundup_64(p_end_fsb, align);
>
> --
> 2.20.1
>