[Devel] [PATCH v13 09/16] fs: consolidate {nr, free}_cached_objects args in shrink_control
Dave Chinner
david at fromorbit.com
Mon Dec 9 17:38:41 PST 2013
On Mon, Dec 09, 2013 at 12:05:50PM +0400, Vladimir Davydov wrote:
> We are going to make the FS shrinker memcg-aware. To achieve that, we
> will have to pass the memcg to scan to the nr_cached_objects and
> free_cached_objects VFS methods, which currently take only the NUMA node
> to scan. Since the shrink_control structure already holds the node, and
> the memcg to scan will be added to it as we introduce memcg-aware
> vmscan, let us consolidate the methods' arguments in this structure to
> keep things clean.
>
> Thanks to David Chinner for the tip.
Ok, you dealt with this as a separate patch...
>
> Signed-off-by: Vladimir Davydov <vdavydov at parallels.com>
> Cc: Glauber Costa <glommer at openvz.org>
> Cc: Dave Chinner <dchinner at redhat.com>
> Cc: Al Viro <viro at zeniv.linux.org.uk>
> ---
> fs/super.c | 8 +++-----
> fs/xfs/xfs_super.c | 6 +++---
> include/linux/fs.h | 6 ++++--
> 3 files changed, 10 insertions(+), 10 deletions(-)
>
> diff --git a/fs/super.c b/fs/super.c
> index a039dba..8f9a81b 100644
> --- a/fs/super.c
> +++ b/fs/super.c
> @@ -76,7 +76,7 @@ static unsigned long super_cache_scan(struct shrinker *shrink,
> return SHRINK_STOP;
>
> if (sb->s_op->nr_cached_objects)
> - fs_objects = sb->s_op->nr_cached_objects(sb, sc->nid);
> + fs_objects = sb->s_op->nr_cached_objects(sb, sc);
>
> inodes = list_lru_count(&sb->s_inode_lru, sc);
> dentries = list_lru_count(&sb->s_dentry_lru, sc);
> @@ -96,8 +96,7 @@ static unsigned long super_cache_scan(struct shrinker *shrink,
> if (fs_objects) {
> fs_objects = mult_frac(sc->nr_to_scan, fs_objects,
> total_objects);
> - freed += sb->s_op->free_cached_objects(sb, fs_objects,
> - sc->nid);
> + freed += sb->s_op->free_cached_objects(sb, sc, fs_objects);
> }
Again, pass the number to scan in sc->nr_to_scan, please.
Cheers,
Dave.
--
Dave Chinner
david at fromorbit.com
More information about the Devel
mailing list