[XFS] kill xfs_igrow_start and xfs_igrow_finish
xfs_igrow_start just expands to xfs_zero_eof with two asserts that are useless in the context of the only caller and some rather confusing comments. xfs_igrow_finish is just a few lines of code decorated again with useless asserts and confusing comments. Just kill those two and merge them into xfs_setattr. SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31186a Signed-off-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: David Chinner <dgc@sgi.com> Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
This commit is contained in:
committed by
Niv Sardi
parent
48b62a1a97
commit
61436febae
@@ -444,7 +444,13 @@ xfs_setattr(
|
||||
code = 0;
|
||||
if ((vap->va_size > ip->i_size) &&
|
||||
(flags & ATTR_NOSIZETOK) == 0) {
|
||||
code = xfs_igrow_start(ip, vap->va_size, credp);
|
||||
/*
|
||||
* Do the first part of growing a file: zero any data
|
||||
* in the last block that is beyond the old EOF. We
|
||||
* need to do this before the inode is joined to the
|
||||
* transaction to modify the i_size.
|
||||
*/
|
||||
code = xfs_zero_eof(ip, vap->va_size, ip->i_size);
|
||||
}
|
||||
xfs_iunlock(ip, XFS_ILOCK_EXCL);
|
||||
|
||||
@@ -512,8 +518,11 @@ xfs_setattr(
|
||||
timeflags |= XFS_ICHGTIME_MOD | XFS_ICHGTIME_CHG;
|
||||
|
||||
if (vap->va_size > ip->i_size) {
|
||||
xfs_igrow_finish(tp, ip, vap->va_size,
|
||||
!(flags & ATTR_DMI));
|
||||
ip->i_d.di_size = vap->va_size;
|
||||
ip->i_size = vap->va_size;
|
||||
if (!(flags & ATTR_DMI))
|
||||
xfs_ichgtime(ip, XFS_ICHGTIME_CHG);
|
||||
xfs_trans_log_inode(tp, ip, XFS_ILOG_CORE);
|
||||
} else if ((vap->va_size <= ip->i_size) ||
|
||||
((vap->va_size == 0) && ip->i_d.di_nextents)) {
|
||||
/*
|
||||
|
Reference in New Issue
Block a user