staging: erofs: introduce erofs shrinker
commita15813126272e5f81311e5e1330162baa40e5b0a
authorGao Xiang <gaoxiang25@huawei.com>
Thu, 26 Jul 2018 12:22:04 +0000 (26 20:22 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 27 Jul 2018 15:24:10 +0000 (27 17:24 +0200)
tree98ad3b2a8b90878e7635a8ed0e1ab54484ff2266
parent2497ee41295c769dc74cb8bac7e03842bc51d331
staging: erofs: introduce erofs shrinker

This patch adds a dedicated shrinker targeting to free unneeded
memory consumed by a number of erofs in-memory data structures.

Like F2FS and UBIFS, it also adds:
  - sbi->umount_mutex to avoid races on shrinker and put_super
  - sbi->shrinker_run_no to not revisit recently scaned objects

Signed-off-by: Gao Xiang <gaoxiang25@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/erofs/internal.h
drivers/staging/erofs/super.c
drivers/staging/erofs/utils.c