GFS2: Use only a single address space for rgrps
authorSteven Whitehouse <swhiteho@redhat.com>
Fri, 6 Dec 2013 16:19:54 +0000 (16:19 +0000)
committerSteven Whitehouse <swhiteho@redhat.com>
Fri, 3 Jan 2014 10:01:50 +0000 (10:01 +0000)
commit70d4ee94b370c5ef54d0870600f16bd92d18013c
treeae741f94eba92bdb6e2882145de03be662557f66
parent7005c3e4ae42858dbb695b2d03d340af799b1f1b
GFS2: Use only a single address space for rgrps

Prior to this patch, GFS2 had one address space for each rgrp,
stored in the glock. This patch changes them to use a single
address space in the super block. This therefore saves
(sizeof(struct address_space) * nr_of_rgrps) bytes of memory
and for large filesystems, that can be significant.

It would be nice to be able to do something similar and merge
the inode metadata address space into the same global
address space. However, that is rather more complicated as the
on-disk location doesn't have a 1:1 mapping with the inodes in
general. So while it could be done, it will be a more complicated
operation as it requires changing a lot more code paths.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
fs/gfs2/glops.c
fs/gfs2/incore.h
fs/gfs2/lops.c
fs/gfs2/meta_io.c
fs/gfs2/ops_fstype.c