Commit 374e2ac3 authored by Eric Sandeen's avatar Eric Sandeen Committed by Nathan Scott

[XFS] Prevent data corruption on extending truncate case from cxfs client

SGI-PV: 942439
SGI-Modid: xfs-linux:xfs-kern:200152a
Signed-off-by: default avatarEric Sandeen <sandeen@sgi.com>
Signed-off-by: default avatarNathan Scott <nathans@sgi.com>
parent 4750ddb0
...@@ -626,8 +626,10 @@ xfs_setattr( ...@@ -626,8 +626,10 @@ xfs_setattr(
*/ */
if (mask & XFS_AT_SIZE) { if (mask & XFS_AT_SIZE) {
code = 0; code = 0;
if (vap->va_size > ip->i_d.di_size) if ((vap->va_size > ip->i_d.di_size) &&
(flags & ATTR_NOSIZETOK) == 0) {
code = xfs_igrow_start(ip, vap->va_size, credp); code = xfs_igrow_start(ip, vap->va_size, credp);
}
xfs_iunlock(ip, XFS_ILOCK_EXCL); xfs_iunlock(ip, XFS_ILOCK_EXCL);
if (!code) if (!code)
code = xfs_itruncate_data(ip, vap->va_size); code = xfs_itruncate_data(ip, vap->va_size);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment