From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752044AbcA0BSU (ORCPT ); Tue, 26 Jan 2016 20:18:20 -0500 Received: from LGEAMRELO13.lge.com ([156.147.23.53]:42795 "EHLO lgeamrelo13.lge.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750756AbcA0BSS (ORCPT ); Tue, 26 Jan 2016 20:18:18 -0500 X-Original-SENDERIP: 156.147.1.125 X-Original-MAILFROM: iamjoonsoo.kim@lge.com X-Original-SENDERIP: 10.177.222.138 X-Original-MAILFROM: iamjoonsoo.kim@lge.com Date: Wed, 27 Jan 2016 10:18:18 +0900 From: Joonsoo Kim To: Dan Williams Cc: Andrew Morton , Rik van Riel , linux-nvdimm , Dave Hansen , "linux-kernel@vger.kernel.org" , Christoph Hellwig , Linux MM , Ingo Molnar , Mel Gorman , "H. Peter Anvin" , Jerome Glisse , Sudip Mukherjee Subject: Re: [RFC PATCH] mm: support CONFIG_ZONE_DEVICE + CONFIG_ZONE_DMA Message-ID: <20160127011817.GA7398@js1304-P5Q-DELUXE> References: <20160126000639.358.89668.stgit@dwillia2-desk3.amr.corp.intel.com> <20160126141152.e1043d14502dcca17813afb3@linux-foundation.org> <20160126145153.44e4f38b04200209d133c0a3@linux-foundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: 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 Hello, On Tue, Jan 26, 2016 at 03:11:36PM -0800, Dan Williams wrote: > On Tue, Jan 26, 2016 at 2:51 PM, Andrew Morton > wrote: > > On Tue, 26 Jan 2016 14:33:48 -0800 Dan Williams wrote: > > > >> >> Towards this end, alias ZONE_DMA and ZONE_DEVICE to work around needing > >> >> to maintain a unique zone number for ZONE_DEVICE. Record the geometry > >> >> of ZONE_DMA at init (->init_spanned_pages) and use that information in > >> >> is_zone_device_page() to differentiate pages allocated via > >> >> devm_memremap_pages() vs true ZONE_DMA pages. Otherwise, use the > >> >> simpler definition of is_zone_device_page() when ZONE_DMA is turned off. > >> >> > >> >> Note that this also teaches the memory hot remove path that the zone may > >> >> not have sections for all pfn spans (->zone_dyn_start_pfn). > >> >> > >> >> A user visible implication of this change is potentially an unexpectedly > >> >> high "spanned" value in /proc/zoneinfo for the DMA zone. > >> > > >> > Well, all these icky tricks are to avoid increasing ZONES_SHIFT, yes? > >> > Is it possible to just use ZONES_SHIFT=3? > >> > >> Last I tried I hit this warning in mm/memory.c > >> > >> #warning Unfortunate NUMA and NUMA Balancing config, growing > >> page-frame for last_cpupid. > > > > Well yes, it may take a bit of work - perhaps salvaging a bit from > > somewhere else if poss. But that might provide a better overall > > solution so could you please have a think? > > > > Will do, especially since other efforts are feeling the pinch on the > MAX_NR_ZONES limitation. Please refer my previous attempt to add a new zone, ZONE_CMA. https://lkml.org/lkml/2015/2/12/84 It salvages a bit from SECTION_WIDTH by increasing section size. Similarly, I guess we can reduce NODE_WIDTH if needed although it could cause to reduce maximum node size. Thanks.