mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
vmscan: change shrinker API by passing shrink_control struct
Change each shrinker's API by consolidating the existing parameters into shrink_control struct. This will simplify any further features added w/o touching each file of shrinker. [[email protected]: fix build] [[email protected]: fix warning] [[email protected]: fix up new shrinker API] [[email protected]: fix xfs warning] [[email protected]: update gfs2] Signed-off-by: Ying Han <[email protected]> Cc: KOSAKI Motohiro <[email protected]> Cc: Minchan Kim <[email protected]> Acked-by: Pavel Emelyanov <[email protected]> Cc: KAMEZAWA Hiroyuki <[email protected]> Cc: Mel Gorman <[email protected]> Acked-by: Rik van Riel <[email protected]> Cc: Johannes Weiner <[email protected]> Cc: Hugh Dickins <[email protected]> Cc: Dave Hansen <[email protected]> Cc: Steven Whitehouse <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
a09ed5e000
commit
1495f230fa
21 changed files with 95 additions and 61 deletions
10
fs/mbcache.c
10
fs/mbcache.c
|
|
@ -90,7 +90,8 @@ static DEFINE_SPINLOCK(mb_cache_spinlock);
|
|||
* What the mbcache registers as to get shrunk dynamically.
|
||||
*/
|
||||
|
||||
static int mb_cache_shrink_fn(struct shrinker *shrink, int nr_to_scan, gfp_t gfp_mask);
|
||||
static int mb_cache_shrink_fn(struct shrinker *shrink,
|
||||
struct shrink_control *sc);
|
||||
|
||||
static struct shrinker mb_cache_shrinker = {
|
||||
.shrink = mb_cache_shrink_fn,
|
||||
|
|
@ -156,18 +157,19 @@ forget:
|
|||
* gets low.
|
||||
*
|
||||
* @shrink: (ignored)
|
||||
* @nr_to_scan: Number of objects to scan
|
||||
* @gfp_mask: (ignored)
|
||||
* @sc: shrink_control passed from reclaim
|
||||
*
|
||||
* Returns the number of objects which are present in the cache.
|
||||
*/
|
||||
static int
|
||||
mb_cache_shrink_fn(struct shrinker *shrink, int nr_to_scan, gfp_t gfp_mask)
|
||||
mb_cache_shrink_fn(struct shrinker *shrink, struct shrink_control *sc)
|
||||
{
|
||||
LIST_HEAD(free_list);
|
||||
struct mb_cache *cache;
|
||||
struct mb_cache_entry *entry, *tmp;
|
||||
int count = 0;
|
||||
int nr_to_scan = sc->nr_to_scan;
|
||||
gfp_t gfp_mask = sc->gfp_mask;
|
||||
|
||||
mb_debug("trying to free %d entries", nr_to_scan);
|
||||
spin_lock(&mb_cache_spinlock);
|
||||
|
|
|
|||
Loading…
Reference in a new issue