From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751756AbdBFMkm (ORCPT ); Mon, 6 Feb 2017 07:40:42 -0500 Received: from mx2.suse.de ([195.135.220.15]:57198 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750950AbdBFMkl (ORCPT ); Mon, 6 Feb 2017 07:40:41 -0500 Date: Mon, 6 Feb 2017 13:40:37 +0100 From: Michal Hocko To: Vinayak Menon Cc: akpm@linux-foundation.org, hannes@cmpxchg.org, mgorman@techsingularity.net, vbabka@suse.cz, riel@redhat.com, vdavydov.dev@gmail.com, anton.vorontsov@linaro.org, minchan@kernel.org, shashim@codeaurora.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/2 RESEND] mm: vmpressure: fix sending wrong events on underflow Message-ID: <20170206124037.GA10298@dhcp22.suse.cz> References: <1486383850-30444-1-git-send-email-vinmenon@codeaurora.org> <1486383850-30444-2-git-send-email-vinmenon@codeaurora.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1486383850-30444-2-git-send-email-vinmenon@codeaurora.org> User-Agent: Mutt/1.6.0 (2016-04-01) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon 06-02-17 17:54:10, Vinayak Menon wrote: [...] > diff --git a/mm/vmpressure.c b/mm/vmpressure.c > index 149fdf6..3281b34 100644 > --- a/mm/vmpressure.c > +++ b/mm/vmpressure.c > @@ -112,8 +112,10 @@ static enum vmpressure_levels vmpressure_calc_level(unsigned long scanned, > unsigned long reclaimed) > { > unsigned long scale = scanned + reclaimed; > - unsigned long pressure; > + unsigned long pressure = 0; > > + if (reclaimed >= scanned) > + goto out; This deserves a comment IMHO. Besides that, why shouldn't we normalize the result already in vmpressure()? Please note that the tree == true path will aggregate both scanned and reclaimed and that already skews numbers. -- Michal Hocko SUSE Labs