]> git.karo-electronics.de Git - karo-tx-linux.git/commit
GFS2: Make resource groups "append only" during life of fs
authorSteven Whitehouse <swhiteho@redhat.com>
Wed, 31 Aug 2011 15:38:29 +0000 (16:38 +0100)
committerSteven Whitehouse <swhiteho@redhat.com>
Thu, 27 Oct 2011 08:08:06 +0000 (09:08 +0100)
commita4ff1b33ecc2f8f0aa48b60a119a7e6f11b056fe
treec3e9cc367acc8b75ef61292a33849335a85a2148
parentbeca42486749c1538a5ed58fe9dcc9f26d428c93
GFS2: Make resource groups "append only" during life of fs

Since we have ruled out supporting online filesystem shrink,
it is possible to make the resource group list append only
during the life of a super block. This gives several benefits:

Firstly, we only need to read new rindex elements as they are added
rather than needing to reread the whole rindex file each time one
element is added.

Secondly, the rindex glock can be held for much shorter periods of
time, and is completely removed from the fast path for allocations.
The lock is taken in shared mode only when updating the resource
groups when the first allocation occurs, and after a grow has
taken place.

Thirdly, this results in a reduction in code size, and everything
gets a lot simpler to understand in this area.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
fs/gfs2/bmap.c
fs/gfs2/dir.c
fs/gfs2/glops.c
fs/gfs2/incore.h
fs/gfs2/inode.c
fs/gfs2/rgrp.c
fs/gfs2/rgrp.h
fs/gfs2/super.c
fs/gfs2/xattr.c