xfs: remove the extsize argument to xfs_eof_alignment

And move the code dependent on it to the one caller that cares
instead.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
This commit is contained in:
Christoph Hellwig
2019-10-30 12:24:58 -07:00
committed by Darrick J. Wong
parent 49bbf8c761
commit 57c49444d7

View File

@ -118,8 +118,7 @@ xfs_iomap_end_fsb(
static xfs_extlen_t static xfs_extlen_t
xfs_eof_alignment( xfs_eof_alignment(
struct xfs_inode *ip, struct xfs_inode *ip)
xfs_extlen_t extsize)
{ {
struct xfs_mount *mp = ip->i_mount; struct xfs_mount *mp = ip->i_mount;
xfs_extlen_t align = 0; xfs_extlen_t align = 0;
@ -142,17 +141,6 @@ xfs_eof_alignment(
align = 0; 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; return align;
} }
@ -167,12 +155,22 @@ xfs_iomap_eof_align_last_fsb(
{ {
struct xfs_ifork *ifp = XFS_IFORK_PTR(ip, XFS_DATA_FORK); struct xfs_ifork *ifp = XFS_IFORK_PTR(ip, XFS_DATA_FORK);
xfs_extlen_t extsz = xfs_get_extsz_hint(ip); 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_bmbt_irec irec;
struct xfs_iext_cursor icur; struct xfs_iext_cursor icur;
ASSERT(ifp->if_flags & XFS_IFEXTENTS); 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) { if (align) {
xfs_fileoff_t aligned_end_fsb = roundup_64(end_fsb, 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) + p_end_fsb = XFS_B_TO_FSBT(mp, end_offset) +
prealloc_blocks; prealloc_blocks;
align = xfs_eof_alignment(ip, 0); align = xfs_eof_alignment(ip);
if (align) if (align)
p_end_fsb = roundup_64(p_end_fsb, align); p_end_fsb = roundup_64(p_end_fsb, align);