kernel_optimize_test/fs/gfs2
Steven Whitehouse 8339ee543e 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>
2011-10-21 12:39:33 +01:00
..
acl.c GFS2: Use ->dirty_inode() 2011-10-21 12:39:26 +01:00
acl.h fs: take the ACL checks to common code 2011-07-25 14:30:23 -04:00
aops.c GFS2: Use ->dirty_inode() 2011-10-21 12:39:26 +01:00
bmap.c GFS2: Make resource groups "append only" during life of fs 2011-10-21 12:39:33 +01:00
bmap.h GFS2: New truncate sequence 2010-09-20 11:18:16 +01:00
dentry.c gfs2: fix d_revalidate oopsen on NFS exports 2011-03-10 03:44:48 -05:00
dir.c GFS2: Make resource groups "append only" during life of fs 2011-10-21 12:39:33 +01:00
dir.h GFS2: Cache dir hash table in a contiguous buffer 2011-07-15 09:31:48 +01:00
export.c GFS2: Make writeback more responsive to system conditions 2011-04-20 09:01:37 +01:00
file.c GFS2: Fix lseek after SEEK_DATA, SEEK_HOLE have been added 2011-10-21 12:39:29 +01:00
gfs2.h [GFS2] Remove remote lock dropping code 2008-06-27 09:39:44 +01:00
glock.c GFS2: Automatically adjust glock min hold time 2011-07-15 09:32:11 +01:00
glock.h GFS2: Automatically adjust glock min hold time 2011-07-15 09:32:11 +01:00
glops.c GFS2: Make resource groups "append only" during life of fs 2011-10-21 12:39:33 +01:00
glops.h GFS2: Clean up fsync() 2011-04-20 09:00:41 +01:00
incore.h GFS2: Make resource groups "append only" during life of fs 2011-10-21 12:39:33 +01:00
inode.c GFS2: Make resource groups "append only" during life of fs 2011-10-21 12:39:33 +01:00
inode.h GFS2: Use ->dirty_inode() 2011-10-21 12:39:26 +01:00
Kconfig GFS2: No longer experimental 2010-09-20 11:18:46 +01:00
lock_dlm.c GFS2: Fix glock deallocation race 2011-03-09 10:58:04 +00:00
log.c block: separate priority boosting from REQ_META 2011-08-23 14:50:29 +02:00
log.h GFS2: Make writeback more responsive to system conditions 2011-04-20 09:01:37 +01:00
lops.c GFS2: Use rbtree for resource groups and clean up bitmap buffer ref count scheme 2011-10-21 12:39:31 +01:00
lops.h [GFS2] Only do lo_incore_commit once 2008-03-31 10:39:54 +01:00
main.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
Makefile GFS2: Rename ops_inode.c to inode.c 2011-05-10 13:12:49 +01:00
meta_io.c block: separate priority boosting from REQ_META 2011-08-23 14:50:29 +02:00
meta_io.h GFS2: Remove unused macro 2011-04-20 09:00:24 +01:00
ops_fstype.c GFS2: Use rbtree for resource groups and clean up bitmap buffer ref count scheme 2011-10-21 12:39:31 +01:00
quota.c GFS2: Use ->dirty_inode() 2011-10-21 12:39:26 +01:00
quota.h vmscan: change shrinker API by passing shrink_control struct 2011-05-25 08:39:26 -07:00
recovery.c GFS2: Fix spectator umount issue 2010-09-29 14:20:52 +01:00
recovery.h gfs2: use workqueue instead of slow-work 2010-07-23 13:14:25 +02:00
rgrp.c GFS2: Make resource groups "append only" during life of fs 2011-10-21 12:39:33 +01:00
rgrp.h GFS2: Make resource groups "append only" during life of fs 2011-10-21 12:39:33 +01:00
super.c GFS2: Make resource groups "append only" during life of fs 2011-10-21 12:39:33 +01:00
super.h gfs: constify xattr_handler 2010-05-21 18:31:20 -04:00
sys.c GFS2: Fix race during filesystem mount 2011-07-12 09:15:46 +01:00
sys.h GFS2: Remove ancient, unused code 2009-01-05 07:39:13 +00:00
trace_gfs2.h GFS2: Add an AIL writeback tracepoint 2011-04-20 09:01:58 +01:00
trans.c GFS2: Use rbtree for resource groups and clean up bitmap buffer ref count scheme 2011-10-21 12:39:31 +01:00
trans.h GFS2: Use rbtree for resource groups and clean up bitmap buffer ref count scheme 2011-10-21 12:39:31 +01:00
util.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
util.h GFS2: Metadata address space clean up 2010-03-01 14:07:37 +00:00
xattr.c GFS2: Make resource groups "append only" during life of fs 2011-10-21 12:39:33 +01:00
xattr.h sanitize xattr handler prototypes 2009-12-16 12:16:49 -05:00