Messages in this thread | | | Date | Mon, 21 May 2012 19:26:09 +0900 | From | KAMEZAWA Hiroyuki <> | Subject | Re: [PATCH] memcg,thp: fix res_counter:96 regression |
| |
(2012/05/19 3:28), Hugh Dickins wrote:
> Occasionally, testing memcg's move_charge_at_immigrate on rc7 shows > a flurry of hundreds of warnings at kernel/res_counter.c:96, where > res_counter_uncharge_locked() does WARN_ON(counter->usage < val). > > The first trace of each flurry implicates __mem_cgroup_cancel_charge() > of mc.precharge, and an audit of mc.precharge handling points to > mem_cgroup_move_charge_pte_range()'s THP handling in 12724850e806 > "memcg: avoid THP split in task migration". > > Checking !mc.precharge is good everywhere else, when a single page is > to be charged; but here the "mc.precharge -= HPAGE_PMD_NR" likely to > follow, is liable to result in underflow (a lot can change since the > precharge was estimated). > > Simply check against HPAGE_PMD_NR: there's probably a better alternative, > trying precharge for more, splitting if unsuccessful; but this one-liner > is safer for now - no kernel/res_counter.c:96 warnings seen in 26 hours. > > Signed-off-by: Hugh Dickins <hughd@google.com>
Thank you.
Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
| |