]> err.no Git - linux-2.6/commitdiff
[XFS] fix old xfs_setattr mis-merge from irix; mostly harmless esp if not
authorEric Sandeen <sandeen@sgi.com>
Wed, 2 Nov 2005 04:10:41 +0000 (15:10 +1100)
committerNathan Scott <nathans@sgi.com>
Wed, 2 Nov 2005 04:10:41 +0000 (15:10 +1100)
using xfs rt

SGI-PV: 944632
SGI-Modid: xfs-linux:xfs-kern:200983a

Signed-off-by: Eric Sandeen <sandeen@sgi.com>
Signed-off-by: Nathan Scott <nathans@sgi.com>
fs/xfs/xfs_vnodeops.c

index b564c1b25e5e669feb555e0f50bd6c1abae0ae83..7c1f74531463bb11cac411322a6366420c822921 100644 (file)
@@ -533,8 +533,7 @@ xfs_setattr(
                /*
                 * Can't change extent size if any extents are allocated.
                 */
-               if ((ip->i_d.di_nextents || ip->i_delayed_blks) &&
-                   (mask & XFS_AT_EXTSIZE) &&
+               if (ip->i_d.di_nextents && (mask & XFS_AT_EXTSIZE) &&
                    ((ip->i_d.di_extsize << mp->m_sb.sb_blocklog) !=
                     vap->va_extsize) ) {
                        code = XFS_ERROR(EINVAL);       /* EFBIG? */
@@ -562,7 +561,8 @@ xfs_setattr(
                /*
                 * Can't change realtime flag if any extents are allocated.
                 */
-               if (ip->i_d.di_nextents && (mask & XFS_AT_XFLAGS) &&
+               if ((ip->i_d.di_nextents || ip->i_delayed_blks) &&
+                   (mask & XFS_AT_XFLAGS) &&
                    (ip->i_d.di_flags & XFS_DIFLAG_REALTIME) !=
                    (vap->va_xflags & XFS_XFLAG_REALTIME)) {
                        code = XFS_ERROR(EINVAL);       /* EFBIG? */