[GIT PULL] XFS update for 2.6.25-rc4

From: Lachlan McIlroy
Date: Thu Feb 28 2008 - 22:50:58 EST


Please pull from the for-linus branch:
git pull git://oss.sgi.com:8090/xfs/xfs-2.6.git for-linus

This will update the following files:

fs/xfs/linux-2.6/xfs_super.c | 14 +++++++-------
fs/xfs/xfs_clnt.h | 2 +-
fs/xfs/xfs_ialloc.c | 2 +-
fs/xfs/xfs_mount.h | 2 +-
fs/xfs/xfs_vfsops.c | 4 ++--
5 files changed, 12 insertions(+), 12 deletions(-)

through these commits:

commit b7405bb65a83e819dd3b21a6d9636c279d9ce79a
Author: Niv Sardi <xaiki@xxxxxxx>
Date: Fri Feb 29 13:58:40 2008 +1100

[XFS] If you mount an XFS filesystem with no mount options at all, then
the "ikeep" option is set rather than "noikeep".

This regression was introduced in 970451.

With no mount options specified, xfs_parseargs() does the following:

int ikeep = 0;

args->flags |= XFSMNT_BARRIER;

args->flags2 |= XFSMNT2_COMPAT_IOSIZE;

if (!options)

goto done;

It only sets the above two options by default and before, it also used to
set XFSMNT_IDELETE by default.

If options are specified, then

if (!(args->flags & XFSMNT_DMAPI) && !ikeep)

args->flags |= XFSMNT_IDELETE;

is executed later on which is skipped by the "goto done;" above.

The solution is to invert the logic.

SGI-PV: 977771
SGI-Modid: xfs-linux-melb:xfs-kern:30590a

Signed-off-by: Niv Sardi <xaiki@xxxxxxx>
Signed-off-by: Barry Naujok <bnaujok@xxxxxxx>
Signed-off-by: Josef 'Jeff' Sipek <jeffpc@xxxxxxxxxxxxxx>
Signed-off-by: Lachlan McIlroy <lachlan@xxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/