From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail172.messagelabs.com (mail172.messagelabs.com [216.82.254.3]) by kanga.kvack.org (Postfix) with SMTP id DECE96B009A for ; Sun, 7 Nov 2010 18:57:11 -0500 (EST) Received: by iwn9 with SMTP id 9so5408939iwn.14 for ; Sun, 07 Nov 2010 15:57:10 -0800 (PST) MIME-Version: 1.0 In-Reply-To: <20101107220353.414283590@cmpxchg.org> References: <1288973333-7891-1-git-send-email-minchan.kim@gmail.com> <20101106010357.GD23393@cmpxchg.org> <20101107215030.007259800@cmpxchg.org> <20101107220353.414283590@cmpxchg.org> Date: Mon, 8 Nov 2010 08:26:29 +0900 Message-ID: Subject: Re: [patch 2/4] memcg: catch negative per-cpu sums in dirty info From: Minchan Kim Content-Type: text/plain; charset=ISO-8859-1 Sender: owner-linux-mm@kvack.org To: Johannes Weiner Cc: Greg Thelen , Andrew Morton , Dave Young , Andrea Righi , KAMEZAWA Hiroyuki , Daisuke Nishimura , Balbir Singh , Wu Fengguang , linux-mm@kvack.org, linux-kernel@vger.kernel.org List-ID: On Mon, Nov 8, 2010 at 7:14 AM, Johannes Weiner wrote: > Folding the per-cpu counters can yield a negative value in case of > accounting races between CPUs. > > When collecting the dirty info, the code would read those sums into an > unsigned variable and then check for it being negative, which can not > work. > > Instead, fold the counters into a signed local variable, make the > check, and only then assign it. > > This way, the function signals correctly when there are insane values > instead of leaking them out to the caller. > > Signed-off-by: Johannes Weiner Reviewed-by: Minchan Kim -- Kind regards, Minchan Kim -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/ Don't email: email@kvack.org