alistair23-linux/fs/xfs/linux-2.6
Josef Jeff Sipek 1bd960ee2b [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@sgi.com>
Signed-off-by: Barry Naujok <bnaujok@sgi.com>
Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
2008-02-28 20:37:56 -08:00
..
kmem.c is_vmalloc_addr(): Check if an address is within the vmalloc boundaries 2008-02-05 09:44:14 -08:00
kmem.h Slab API: remove useless ctor parameter and reorder parameters 2007-10-17 08:42:45 -07:00
mrlock.h [XFS] Add lockdep support for XFS 2007-05-08 13:50:19 +10:00
mutex.h
sema.h
sv.h
time.h
xfs_aops.c [XFS] optimize XFS_IS_REALTIME_INODE w/o realtime config 2008-02-07 18:16:43 +11:00
xfs_aops.h [XFS] move v_iocount from bhv_vnode to xfs_inode 2007-10-16 11:38:56 +10:00
xfs_buf.c Merge branch 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6 2008-02-07 19:12:12 -08:00
xfs_buf.h [XFS] kill superflous buffer locking (2nd attempt) 2008-02-07 18:18:50 +11:00
xfs_cred.h
xfs_dmapi_priv.h [XFS] Remove KERNEL_VERSION macros from xfs_dmapi.h 2006-11-11 18:05:06 +11:00
xfs_export.c [XFS] Cleanup various fid related bits: 2008-02-07 18:20:11 +11:00
xfs_export.h xfs: new export ops 2007-10-22 08:13:20 -07:00
xfs_file.c [XFS] Fix oops in xfs_file_readdir() 2008-02-07 18:24:13 +11:00
xfs_fs_subr.c [XFS] kill the v_flag member in struct bhv_vnode 2007-10-16 11:37:29 +10:00
xfs_fs_subr.h [XFS] decontaminate vnode operations from behavior details 2007-10-15 16:54:29 +10:00
xfs_globals.c [XFS] Fix up sparse warnings. 2008-02-07 18:14:38 +11:00
xfs_globals.h [XFS] Remove xfs_physmem 2007-10-15 16:40:14 +10:00
xfs_ioctl.c Introduce path_put() 2008-02-14 21:13:33 -08:00
xfs_ioctl32.c [XFS] Fix up sparse warnings. 2008-02-07 18:14:38 +11:00
xfs_ioctl32.h
xfs_iops.c [XFS] keep i_nlink updated and use proper accessors 2008-02-07 18:23:38 +11:00
xfs_iops.h [XFS] call common xfs vnode-level helpers directly and remove vnode operations 2007-10-16 10:40:00 +10:00
xfs_linux.h [XFS] Remove the BPCSHIFT and NB* based macros from XFS. 2008-02-07 18:17:58 +11:00
xfs_lrw.c Merge branch 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6 2008-02-07 19:12:12 -08:00
xfs_lrw.h [XFS] kill xfs_iocore_t 2008-02-07 16:48:58 +11:00
xfs_stats.c
xfs_stats.h
xfs_super.c [XFS] If you mount an XFS filesystem with no mount options at all, then 2008-02-28 20:37:56 -08:00
xfs_super.h exportfs: make struct export_operations const 2007-10-22 08:13:21 -07:00
xfs_sysctl.c [XFS] Concurrent Multi-File Data Streams 2007-07-14 15:40:53 +10:00
xfs_sysctl.h [XFS] Concurrent Multi-File Data Streams 2007-07-14 15:40:53 +10:00
xfs_version.h
xfs_vfs.h [XFS] kill struct bhv_vfs 2007-10-16 12:17:27 +10:00
xfs_vnode.c [XFS] add __init/__exit mark to specific init/cleanup functions 2008-02-07 18:25:19 +11:00
xfs_vnode.h [XFS] cleanup vnode useage in xfs_iget.c 2008-02-07 16:55:46 +11:00