mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
Memory controller: add per cgroup LRU and reclaim
Add the page_cgroup to the per cgroup LRU. The reclaim algorithm has been modified to make the isolate_lru_pages() as a pluggable component. The scan_control data structure now accepts the cgroup on behalf of which reclaims are carried out. try_to_free_pages() has been extended to become cgroup aware. [[email protected]: fix warning] [[email protected]: initialize all scan_control's isolate_pages member] [[email protected]: make do_try_to_free_pages() static] [[email protected]: memcgroup: fix try_to_free order] [[email protected]: this unlock_page_cgroup() is unnecessary] Signed-off-by: Pavel Emelianov <[email protected]> Signed-off-by: Balbir Singh <[email protected]> Cc: Paul Menage <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: "Eric W. Biederman" <[email protected]> Cc: Nick Piggin <[email protected]> Cc: Kirill Korotaev <[email protected]> Cc: Herbert Poetzl <[email protected]> Cc: David Rientjes <[email protected]> Cc: Vaidyanathan Srinivasan <[email protected]> Signed-off-by: Lee Schermerhorn <[email protected]> Signed-off-by: Hugh Dickins <[email protected]> Signed-off-by: KAMEZAWA Hiroyuki <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
67e465a77b
commit
66e1707bc3
6 changed files with 286 additions and 30 deletions
|
|
@ -29,6 +29,7 @@
|
|||
#include <linux/cpu.h>
|
||||
#include <linux/notifier.h>
|
||||
#include <linux/backing-dev.h>
|
||||
#include <linux/memcontrol.h>
|
||||
|
||||
/* How many pages do we try to swap or page in/out together? */
|
||||
int page_cluster;
|
||||
|
|
@ -175,6 +176,7 @@ void activate_page(struct page *page)
|
|||
SetPageActive(page);
|
||||
add_page_to_active_list(zone, page);
|
||||
__count_vm_event(PGACTIVATE);
|
||||
mem_cgroup_move_lists(page_get_page_cgroup(page), true);
|
||||
}
|
||||
spin_unlock_irq(&zone->lru_lock);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue