浏览代码

memcgroup: make the memory controller more desktop responsive

This patch makes the memory controller more responsive on my desktop.

1. Set all cached pages as inactive.  We were by default marking all pages
   as active, thus forcing us to go through two passes for reclaiming pages

2. Remove congestion_wait(), since we already have that logic in
   do_try_to_free_pages()

Signed-off-by: Balbir Singh <balbir@linux.vnet.ibm.com>
Reviewed-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Cc: Paul Menage <menage@google.com>
Cc: Pavel Emelianov <xemul@openvz.org>
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Balbir Singh 17 年之前
父节点
当前提交
4a56d02e34
共有 1 个文件被更改,包括 1 次插入2 次删除
  1. 1 2
      mm/memcontrol.c

+ 1 - 2
mm/memcontrol.c

@@ -591,7 +591,6 @@ retry:
 			mem_cgroup_out_of_memory(mem, gfp_mask);
 			mem_cgroup_out_of_memory(mem, gfp_mask);
 			goto out;
 			goto out;
 		}
 		}
-		congestion_wait(WRITE, HZ/10);
 	}
 	}
 
 
 	pc->ref_cnt = 1;
 	pc->ref_cnt = 1;
@@ -599,7 +598,7 @@ retry:
 	pc->page = page;
 	pc->page = page;
 	pc->flags = PAGE_CGROUP_FLAG_ACTIVE;
 	pc->flags = PAGE_CGROUP_FLAG_ACTIVE;
 	if (ctype == MEM_CGROUP_CHARGE_TYPE_CACHE)
 	if (ctype == MEM_CGROUP_CHARGE_TYPE_CACHE)
-		pc->flags |= PAGE_CGROUP_FLAG_CACHE;
+		pc->flags = PAGE_CGROUP_FLAG_CACHE;
 
 
 	lock_page_cgroup(page);
 	lock_page_cgroup(page);
 	if (page_get_page_cgroup(page)) {
 	if (page_get_page_cgroup(page)) {