alistair23-linux/fs/gfs2
Steven Whitehouse 9b8df98fc8 GFS2: Fix metafs mounts
This patch is intended to fix the issues reported in bz #457798. Instead
of having the metafs as a separate filesystem, it becomes a second root
of gfs2. As a result it will appear as type gfs2 in /proc/mounts, but it
is still possible (for backwards compatibility purposes) to mount it as
type gfs2meta. A new mount flag "meta" is introduced so that its possible
to tell the two cases apart in /proc/mounts.

As a result it becomes possible to mount type gfs2 with -o meta and
get the same result as mounting type gfs2meta. So it is possible to
mount just the metafs on its own. Currently if you do this, its then
impossible to mount the "normal" root of the gfs2 filesystem without
first unmounting the metafs root. I'm not sure if thats a feature or
a bug :-)

Either way, this is a great improvement on the previous scheme and I've
verified that it works ok with bind mounts on both the "normal" root
and the metafs root in various combinations.

There were also a bunch of functions in super.c which didn't belong there,
so this moves them into ops_fstype.c where they can be static. Hopefully
the mount/umount sequence is now more obvious as a result.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Cc: Alexander Viro <aviro@redhat.com>
2008-08-13 09:59:40 +01:00
..
locking/dlm [GFS2] Fix module building 2008-06-27 09:40:57 +01:00
acl.c
acl.h
bmap.c [GFS2] fix gfs2 block allocation (cleaned up) 2008-06-24 19:02:28 +01:00
bmap.h
daemon.c
daemon.h
dir.c
dir.h
eaops.c
eaops.h
eattr.c
eattr.h
gfs2.h [GFS2] Remove remote lock dropping code 2008-06-27 09:39:44 +01:00
glock.c GFS2: Fix debugfs glock file iterator 2008-08-13 09:59:10 +01:00
glock.h [GFS2] Remove remote lock dropping code 2008-06-27 09:39:44 +01:00
glops.c [GFS2] Clean up the glock core 2008-06-27 09:39:22 +01:00
glops.h
incore.h GFS2: Fix metafs mounts 2008-08-13 09:59:40 +01:00
inode.c [PATCH] don't pass nameidata to gfs2_lookupi() 2008-07-26 20:53:36 -04:00
inode.h [PATCH] don't pass nameidata to gfs2_lookupi() 2008-07-26 20:53:36 -04:00
Kconfig [GFS2] No lock_nolock 2008-06-27 09:39:28 +01:00
locking.c [GFS2] Fix ordering of args for list_add 2008-06-27 09:39:34 +01:00
log.c [GFS2] trivial sparse lock annotations 2008-06-27 09:39:31 +01:00
log.h [GFS2] trivial sparse lock annotations 2008-06-27 09:39:31 +01:00
lops.c
lops.h
main.c SL*B: drop kmem cache argument from constructor 2008-07-26 12:00:07 -07:00
Makefile [GFS2] No lock_nolock 2008-06-27 09:39:28 +01:00
meta_io.c [GFS2] Clean up the glock core 2008-06-27 09:39:22 +01:00
meta_io.h [GFS2] Clean up the glock core 2008-06-27 09:39:22 +01:00
mount.c GFS2: Fix metafs mounts 2008-08-13 09:59:40 +01:00
mount.h
ops_address.c [GFS2] Revise readpage locking 2008-06-27 09:39:37 +01:00
ops_address.h
ops_dentry.c
ops_dentry.h
ops_export.c [PATCH] don't pass nameidata to gfs2_lookupi() 2008-07-26 20:53:36 -04:00
ops_file.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw 2008-07-15 10:38:46 -07:00
ops_fstype.c GFS2: Fix metafs mounts 2008-08-13 09:59:40 +01:00
ops_fstype.h
ops_inode.c [PATCH] don't pass nameidata to gfs2_lookupi() 2008-07-26 20:53:36 -04:00
ops_inode.h
ops_super.c GFS2: Fix metafs mounts 2008-08-13 09:59:40 +01:00
ops_super.h
quota.c [GFS2] Fix GFS2's use of do_div() in its quota calculations 2008-07-11 14:35:01 +01:00
quota.h
recovery.c [GFS2] No lock_nolock 2008-06-27 09:39:28 +01:00
recovery.h
rgrp.c [GFS2] Replace rgrp "recent list" with mru list 2008-07-10 15:54:12 +01:00
rgrp.h
super.c GFS2: Fix metafs mounts 2008-08-13 09:59:40 +01:00
super.h GFS2: Fix metafs mounts 2008-08-13 09:59:40 +01:00
sys.c [GFS2] Remove support for unused and pointless flag 2008-07-10 16:09:29 +01:00
sys.h
trans.c
trans.h
util.c
util.h fs: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00