Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758308AbbLCENS (ORCPT ); Wed, 2 Dec 2015 23:13:18 -0500 Received: from LGEAMRELO13.lge.com ([156.147.23.53]:39454 "EHLO lgeamrelo13.lge.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754103AbbLCENR (ORCPT ); Wed, 2 Dec 2015 23:13:17 -0500 X-Original-SENDERIP: 156.147.1.121 X-Original-MAILFROM: iamjoonsoo.kim@lge.com X-Original-SENDERIP: 10.177.222.138 X-Original-MAILFROM: iamjoonsoo.kim@lge.com Date: Thu, 3 Dec 2015 13:14:11 +0900 From: Joonsoo Kim To: Christoph Lameter Cc: Andrew Morton , linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH] mm/vmstat: retrieve more accurate vmstat value Message-ID: <20151203041410.GA1495@js1304-P5Q-DELUXE> References: <1448346123-2699-1-git-send-email-iamjoonsoo.kim@lge.com> <20151125025735.GC9563@js1304-P5Q-DELUXE> <20151126015252.GA13138@js1304-P5Q-DELUXE> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20151126015252.GA13138@js1304-P5Q-DELUXE> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1713 Lines: 39 On Thu, Nov 26, 2015 at 10:52:52AM +0900, Joonsoo Kim wrote: > On Wed, Nov 25, 2015 at 10:04:44AM -0600, Christoph Lameter wrote: > > > Although vmstat values aren't designed for accuracy, these are already > > > used by some sensitive places so it is better to be more accurate. > > > > The design is to sacrifice accuracy and the time the updates occur for > > performance reasons. This is not the purpose the counters were designed > > for. If you put these demands on the vmstat then you will get complex > > convoluted code and compromise performance. > > I understand design decision, but, it is better to get value as much > as accurate if there is no performance problem. My patch would not > cause much performance degradation because it is just adding one > this_cpu_read(). > > Consider about following example. Current implementation returns > interesting output if someone do following things. > > v1 = zone_page_state(XXX); > mod_zone_page_state(XXX, 1); > v2 = zone_page_state(XXX); > > v2 would be same with v1 in most of cases even if we already update > it. > > This situation could occurs in page allocation path and others. If > some task try to allocate many pages, then watermark check returns > same values until updating vmstat even if some freepage are allocated. > There are some adjustments for this imprecision but why not do it become > accurate? I think that this change is reasonable trade-off. > Christoph, any comment? Thanks. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/