[RFC] [PATCH 7/9] memcg: charge likely success

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: KAMEZAWA Hiroyuki
Date: Thursday, September 11, 2008 - 4:20 am

In fast path, res_counter_charge() will success.
This annotation 'unlikely' works very well to make footprint shorter.
(And you can see the benefit of this by some benchmarks.)

Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>

Index: mmtom-2.6.27-rc5+/mm/memcontrol.c
===================================================================
--- mmtom-2.6.27-rc5+.orig/mm/memcontrol.c
+++ mmtom-2.6.27-rc5+/mm/memcontrol.c
@@ -683,7 +683,7 @@ static int mem_cgroup_charge_common(stru
 		css_get(&memcg->css);
 	}
 
-	while (res_counter_charge(&mem->res, PAGE_SIZE)) {
+	while (unlikely(res_counter_charge(&mem->res, PAGE_SIZE))) {
 		if (!(gfp_mask & __GFP_WAIT))
 			goto out;
 

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[RFC] [PATCH 0/9] remove page_cgroup pointer (with some e ..., KAMEZAWA Hiroyuki, (Thu Sep 11, 4:08 am)
[RFC] [PATCH 1/9] memcg:make root no limit, KAMEZAWA Hiroyuki, (Thu Sep 11, 4:11 am)
[RFC] [PATCH 2/9] memcg: atomic page_cgroup flags, KAMEZAWA Hiroyuki, (Thu Sep 11, 4:13 am)
[RFC] [PATCH 3/9] memcg: move_account between groups, KAMEZAWA Hiroyuki, (Thu Sep 11, 4:14 am)
[RFC] [PATCH 4/9] memcg: new force empty, KAMEZAWA Hiroyuki, (Thu Sep 11, 4:16 am)
[RFC] [PATCH 5/9] memcg: set mapping null before uncharge, KAMEZAWA Hiroyuki, (Thu Sep 11, 4:17 am)
[RFC] [PATCH 6/9] memcg: optimize stat, KAMEZAWA Hiroyuki, (Thu Sep 11, 4:18 am)
[RFC] [PATCH 7/9] memcg: charge likely success, KAMEZAWA Hiroyuki, (Thu Sep 11, 4:20 am)
[RFC] [PATCH 8/9] memcg: remove page_cgroup pointer from m ..., KAMEZAWA Hiroyuki, (Thu Sep 11, 4:22 am)
[RFC] [PATCH 9/9] memcg: percpu page cgroup lookup cache, KAMEZAWA Hiroyuki, (Thu Sep 11, 4:24 am)
Re: [RFC] [PATCH 3/9] memcg: move_account between groups, KAMEZAWA Hiroyuki, (Thu Sep 11, 9:36 pm)
Re: [RFC] [PATCH 0/9] remove page_cgroup pointer (with so ..., KAMEZAWA Hiroyuki, (Fri Sep 12, 2:35 am)
Re: [RFC] [PATCH 0/9] remove page_cgroup pointer (with so ..., KAMEZAWA Hiroyuki, (Fri Sep 12, 3:18 am)
memcg: lazy_lru (was Re: [RFC] [PATCH 8/9] memcg: remove p ..., KAMEZAWA Hiroyuki, (Tue Sep 16, 5:13 am)
[RFC][PATCH 10/9] get/put page at charge/uncharge, KAMEZAWA Hiroyuki, (Tue Sep 16, 5:17 am)
[RFC][PATCH 11/9] lazy lru free vector for memcg, KAMEZAWA Hiroyuki, (Tue Sep 16, 5:19 am)
[RFC] [PATCH 12/9] lazy lru add vie per cpu vector for memcg., KAMEZAWA Hiroyuki, (Tue Sep 16, 5:21 am)
Re: [RFC][PATCH 11/9] lazy lru free vector for memcg, Pavel Emelyanov, (Tue Sep 16, 5:23 am)
Re: Re: [RFC][PATCH 11/9] lazy lru free vector for memcg, kamezawa.hiroyu, (Tue Sep 16, 6:02 am)