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>
This commit is contained in:

committed by
Dave Chinner

parent
7f8275d0d6
commit
70e60ce715
@@ -1883,7 +1883,6 @@ init_xfs_fs(void)
|
||||
goto out_cleanup_procfs;
|
||||
|
||||
vfs_initquota();
|
||||
xfs_inode_shrinker_init();
|
||||
|
||||
error = register_filesystem(&xfs_fs_type);
|
||||
if (error)
|
||||
@@ -1911,7 +1910,6 @@ exit_xfs_fs(void)
|
||||
{
|
||||
vfs_exitquota();
|
||||
unregister_filesystem(&xfs_fs_type);
|
||||
xfs_inode_shrinker_destroy();
|
||||
xfs_sysctl_unregister();
|
||||
xfs_cleanup_procfs();
|
||||
xfs_buf_terminate();
|
||||
|
Reference in New Issue
Block a user