Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751049AbdCQKZz (ORCPT ); Fri, 17 Mar 2017 06:25:55 -0400 Received: from mx1.redhat.com ([209.132.183.28]:56988 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750977AbdCQKZy (ORCPT ); Fri, 17 Mar 2017 06:25:54 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 12EAE85376 Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=imammedo@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 12EAE85376 Date: Fri, 17 Mar 2017 11:25:47 +0100 From: Igor Mammedov To: Andrea Arcangeli Cc: Joonsoo Kim , Michal Hocko , Vitaly Kuznetsov , linux-mm@kvack.org, Mel Gorman , qiuxishi@huawei.com, toshi.kani@hpe.com, xieyisheng1@huawei.com, slaoub@gmail.com, Zhang Zhen , Reza Arbab , Yasuaki Ishimatsu , Tang Chen , Vlastimil Babka , LKML , Andrew Morton , David Rientjes , Daniel Kiper , Andi Kleen Subject: Re: ZONE_NORMAL vs. ZONE_MOVABLE Message-ID: <20170317112547.18c7630c@nial.brq.redhat.com> In-Reply-To: <20170316190125.GT27056@redhat.com> References: <20170315091347.GA32626@dhcp22.suse.cz> <87shmedddm.fsf@vitty.brq.redhat.com> <20170315122914.GG32620@dhcp22.suse.cz> <87k27qd7m2.fsf@vitty.brq.redhat.com> <20170315131139.GK32620@dhcp22.suse.cz> <20170315163729.GR27056@redhat.com> <20170316053122.GA14701@js1304-P5Q-DELUXE> <20170316190125.GT27056@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Fri, 17 Mar 2017 10:25:54 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1218 Lines: 28 On Thu, 16 Mar 2017 20:01:25 +0100 Andrea Arcangeli wrote: [...] > If we can make zone overlap work with a 100% overlap across the whole > node that would be a fine alternative, the zoneinfo.py output will > look weird, but if that's the only downside it's no big deal. With > sticky movable pageblocks it'll all be ZONE_NORMAL, with overlap it'll > all be both ZONE_NORMAL and ZONE_MOVABLE at the same time. Looks like I'm not getting idea with zone overlap, so We potentially have a flag that hotplugged block is removable so on hotplug we could register them with zone MOVABLE as default, however here comes zone balance issue so we can't do it until it's solved. As Vitaly's suggested we could steal(convert) existing blocks from the border of MOVABLE zone into zone NORMAL when there isn't enough memory in zone NORMAL to accommodate page tables extension for just arrived new memory block. That would make a memory module containing stolen block non-removable, but that may be acceptable sacrifice to keep system alive. Potentially on attempt to remove it kernel could even inform hardware(hypervisor) that memory module become non removable using _OST ACPI method. > Thanks, > Andrea