All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wanlong Gao <wanlong.gao@gmail.com>
To: Dave Chinner <david@fromorbit.com>
Cc: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	linux-mm@kvack.org, khlebnikov@openvz.org
Subject: Re: [PATCH 05/13] mm: convert shrinkers to use new API
Date: Sat, 27 Aug 2011 01:09:30 +0800	[thread overview]
Message-ID: <1314378570.1987.8.camel@Allen> (raw)
In-Reply-To: <1314089786-20535-6-git-send-email-david@fromorbit.com>

On Tue, 2011-08-23 at 18:56 +1000, Dave Chinner wrote:
> From: Dave Chinner <dchinner@redhat.com>
> 
> Modify shrink_slab() to use the new .count_objects/.scan_objects API
> and implement the callouts for all the existing shrinkers.

> +static long
> +cifs_idmap_shrinker_scan(struct shrinker *shrink, struct shrink_control *sc)
>  {
> -	int nr_to_scan = sc->nr_to_scan;
> -	int nr_del = 0;
> -	int nr_rem = 0;
>  	struct rb_root *root;
> +	long freed;
>  
>  	root = &uidtree;
>  	spin_lock(&siduidlock);
> -	shrink_idmap_tree(root, nr_to_scan, &nr_rem, &nr_del);
> +	freed = shrink_idmap_tree(root, sc->nr_to_scan);
>  	spin_unlock(&siduidlock);
>  
>  	root = &gidtree;
>  	spin_lock(&sidgidlock);
> -	shrink_idmap_tree(root, nr_to_scan, &nr_rem, &nr_del);
> +	freed += shrink_idmap_tree(root, sc->nr_to_scan);
>  	spin_unlock(&sidgidlock);
>  
> -	return nr_rem;
> +	return freed;
> +}
> +
> +/*
> + * This still abuses the nr_to_scan == 0 trick to get the common code just to
> + * count objects. There neds to be an external count of the objects in the

			  ^^^^^?
Hi Dave:
Great work. a bit comments.
Thanks
-Wanlong Gao



WARNING: multiple messages have this Message-ID (diff)
From: Wanlong Gao <wanlong.gao@gmail.com>
To: Dave Chinner <david@fromorbit.com>
Cc: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	linux-mm@kvack.org, khlebnikov@openvz.org
Subject: Re: [PATCH 05/13] mm: convert shrinkers to use new API
Date: Sat, 27 Aug 2011 01:09:30 +0800	[thread overview]
Message-ID: <1314378570.1987.8.camel@Allen> (raw)
In-Reply-To: <1314089786-20535-6-git-send-email-david@fromorbit.com>

On Tue, 2011-08-23 at 18:56 +1000, Dave Chinner wrote:
> From: Dave Chinner <dchinner@redhat.com>
> 
> Modify shrink_slab() to use the new .count_objects/.scan_objects API
> and implement the callouts for all the existing shrinkers.

> +static long
> +cifs_idmap_shrinker_scan(struct shrinker *shrink, struct shrink_control *sc)
>  {
> -	int nr_to_scan = sc->nr_to_scan;
> -	int nr_del = 0;
> -	int nr_rem = 0;
>  	struct rb_root *root;
> +	long freed;
>  
>  	root = &uidtree;
>  	spin_lock(&siduidlock);
> -	shrink_idmap_tree(root, nr_to_scan, &nr_rem, &nr_del);
> +	freed = shrink_idmap_tree(root, sc->nr_to_scan);
>  	spin_unlock(&siduidlock);
>  
>  	root = &gidtree;
>  	spin_lock(&sidgidlock);
> -	shrink_idmap_tree(root, nr_to_scan, &nr_rem, &nr_del);
> +	freed += shrink_idmap_tree(root, sc->nr_to_scan);
>  	spin_unlock(&sidgidlock);
>  
> -	return nr_rem;
> +	return freed;
> +}
> +
> +/*
> + * This still abuses the nr_to_scan == 0 trick to get the common code just to
> + * count objects. There neds to be an external count of the objects in the

			  ^^^^^?
Hi Dave:
Great work. a bit comments.
Thanks
-Wanlong Gao


--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  parent reply	other threads:[~2011-08-26 17:09 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-23  8:56 [PATCH 00/12] RFC: shrinker APi rework and generic LRU lists Dave Chinner
2011-08-23  8:56 ` Dave Chinner
2011-08-23  8:56 ` [PATCH 01/13] fs: Use a common define for inode slab caches Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-23  9:13   ` Christoph Hellwig
2011-08-23  9:13     ` Christoph Hellwig
2011-08-23  9:20     ` Dave Chinner
2011-08-23  9:20       ` Dave Chinner
2011-08-24  6:16       ` Christoph Hellwig
2011-08-24  6:16         ` Christoph Hellwig
2011-08-23  8:56 ` [PATCH 02/13] dcache: convert dentry_stat.nr_unused to per-cpu counters Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-23  9:13   ` Christoph Hellwig
2011-08-23  9:13     ` Christoph Hellwig
2011-08-24 14:12   ` Christoph Lameter
2011-08-24 14:12     ` Christoph Lameter
2011-08-23  8:56 ` [PATCH 03/13] dentry: move to per-sb LRU locks Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-24  6:16   ` Christoph Hellwig
2011-08-24  6:16     ` Christoph Hellwig
2011-08-23  8:56 ` [PATCH 04/13] mm: new shrinker API Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-23  9:15   ` Christoph Hellwig
2011-08-23  9:15     ` Christoph Hellwig
2011-08-23  9:23     ` Dave Chinner
2011-08-23  9:23       ` Dave Chinner
2011-08-24  6:17       ` Christoph Hellwig
2011-08-24  6:17         ` Christoph Hellwig
2011-08-23  8:56 ` [PATCH 05/13] mm: convert shrinkers to use new API Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-23  9:17   ` Christoph Hellwig
2011-08-23  9:17     ` Christoph Hellwig
2011-08-23  9:35   ` Steven Whitehouse
2011-08-23  9:35     ` Steven Whitehouse
2011-08-26 17:09   ` Wanlong Gao [this message]
2011-08-26 17:09     ` Wanlong Gao
2011-08-23  8:56 ` [PATCH 06/13] shrinker: remove old API now it is unused Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-23  8:56 ` [PATCH 07/13] Use atomic-long operations instead of looping around cmpxchg() Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-23  8:56 ` [PATCH 08/13] list: add a new LRU list type Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-23  9:20   ` Christoph Hellwig
2011-08-23  9:20     ` Christoph Hellwig
2011-08-23  9:32     ` Dave Chinner
2011-08-23  9:32       ` Dave Chinner
2011-08-23  9:58       ` Konstantin Khlebnikov
2011-08-23  9:58         ` Konstantin Khlebnikov
2011-08-24 14:24         ` Christoph Lameter
2011-08-24 14:24           ` Christoph Lameter
2011-08-23  8:56 ` [PATCH 09/13] inode: convert inode lru list to generic lru list code Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-24  6:38   ` Christoph Hellwig
2011-08-24  6:38     ` Christoph Hellwig
2011-08-23  8:56 ` [PATCH 10/13] xfs: convert buftarg LRU to generic code Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-24  6:27   ` Christoph Hellwig
2011-08-24  6:27     ` Christoph Hellwig
2011-08-23  8:56 ` [PATCH 11/13] dcache: use a dispose list in select_parent Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-23  9:37   ` Christoph Hellwig
2011-08-23  9:37     ` Christoph Hellwig
2011-09-05  9:42   ` Christoph Hellwig
2011-09-05  9:42     ` Christoph Hellwig
2011-08-23  8:56 ` [PATCH 12/13] dcache: remove dentries from LRU before putting on dispose list Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-23  9:35   ` Christoph Hellwig
2011-08-23  9:35     ` Christoph Hellwig
2011-08-23  9:57     ` Dave Chinner
2011-08-23  9:57       ` Dave Chinner
2011-08-23  8:56 ` [PATCH 13/13] dcache: convert to use new lru list infrastructure Dave Chinner
2011-08-23  8:56   ` Dave Chinner
2011-08-24  6:32   ` Christoph Hellwig
2011-08-24  6:32     ` Christoph Hellwig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1314378570.1987.8.camel@Allen \
    --to=wanlong.gao@gmail.com \
    --cc=david@fromorbit.com \
    --cc=khlebnikov@openvz.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.