From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753567AbcFJNrw (ORCPT ); Fri, 10 Jun 2016 09:47:52 -0400 Received: from outbound-smtp05.blacknight.com ([81.17.249.38]:59896 "EHLO outbound-smtp05.blacknight.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751017AbcFJNrv (ORCPT ); Fri, 10 Jun 2016 09:47:51 -0400 Date: Fri, 10 Jun 2016 14:47:47 +0100 From: Mel Gorman To: Vlastimil Babka Cc: Andrew Morton , Linux-MM , Rik van Riel , Johannes Weiner , LKML Subject: Re: [PATCH 01/27] mm, vmstat: Add infrastructure for per-node vmstats Message-ID: <20160610134746.GL2527@techsingularity.net> References: <1465495483-11855-1-git-send-email-mgorman@techsingularity.net> <1465495483-11855-2-git-send-email-mgorman@techsingularity.net> <575AC13D.2010104@suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: <575AC13D.2010104@suse.cz> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jun 10, 2016 at 03:31:41PM +0200, Vlastimil Babka wrote: > On 06/09/2016 08:04 PM, Mel Gorman wrote: > > References: bnc#969297 PM performance -- intel_pstate > > Patch-mainline: No, expected 4.7 and queued in linux-mm > > Patch-name: patches.suse/mm-vmstat-Add-infrastructure-for-per-node-vmstats.patch > > Remove? > Yes. Clearly I fat-fingers a cherry pick and used the wrong command that added distro-specific metadata. Sorry. > > VM statistic counters for reclaim decisions are zone-based. If the kernel > > is to reclaim on a per-node basis then we need to track per-node statistics > > but there is no infrastructure for that. The most notable change is that > > the old node_page_state is renamed to sum_zone_node_page_state. The new > > node_page_state takes a pglist_data and uses per-node stats but none exist > > yet. There is some renaming such as vm_stat to vm_zone_stat and the addition > > of vm_node_stat and the renaming of mod_state to mod_zone_state. Otherwise, > > this is mostly a mechanical patch with no functional change. There is a > > lot of similarity between the node and zone helpers which is unfortunate > > but there was no obvious way of reusing the code and maintaining type safety. > > > > Signed-off-by: Mel Gorman > > Acked-by: Johannes Weiner > > Signed-off-by: Mel Gorman > > Acked-by: Vlastimil Babka > > Some nitpicks below. > > > @@ -237,12 +286,26 @@ static inline void __inc_zone_page_state(struct page *page, > > __inc_zone_state(page_zone(page), item); > > } > > > > +static inline void __inc_node_page_state(struct page *page, > > + enum node_stat_item item) > > +{ > > + __inc_node_state(page_zone(page)->zone_pgdat, item); > > This page -> node translation looks needlessly ineffective. How about > using NODE_DATA(page_to_nid(page)). > Yes, I will. I won't answer the individual feedbacks. They all seem reasonable. -- Mel Gorman SUSE Labs