]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
xfs: convert inode shrinker to per-filesystem contexts
authorDave Chinner <dchinner@redhat.com>
Mon, 19 Jul 2010 22:07:02 +0000 (08:07 +1000)
committerDave Chinner <david@fromorbit.com>
Mon, 19 Jul 2010 22:07:02 +0000 (08:07 +1000)
commit70e60ce71516c3a9e882edb70a09f696a05961db
tree324a400f2d21d071f6c462edbb6efa789125f6f1
parent7f8275d0d660c146de6ee3017e1e2e594c49e820
xfs: convert inode shrinker to per-filesystem contexts

Now the shrinker passes us a context, wire up a shrinker context per
filesystem. This allows us to remove the global mount list and the
locking problems that introduced. It also means that a shrinker call
does not need to traverse clean filesystems before finding a
filesystem with reclaimable inodes.  This significantly reduces
scanning overhead when lots of filesystems are present.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
fs/xfs/linux-2.6/xfs_super.c
fs/xfs/linux-2.6/xfs_sync.c
fs/xfs/linux-2.6/xfs_sync.h
fs/xfs/xfs_mount.h