From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751724AbdEJFxZ (ORCPT ); Wed, 10 May 2017 01:53:25 -0400 Received: from mx2.suse.de ([195.135.220.15]:39955 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751624AbdEJFxX (ORCPT ); Wed, 10 May 2017 01:53:23 -0400 Date: Wed, 10 May 2017 07:53:18 +0200 From: Michal Hocko To: Dan Williams Cc: linux-mm , Andrew Morton , Mel Gorman , Vlastimil Babka , Andrea Arcangeli , Jerome Glisse , Reza Arbab , Yasuaki Ishimatsu , qiuxishi@huawei.com, Kani Toshimitsu , slaoub@gmail.com, Joonsoo Kim , Andi Kleen , David Rientjes , Daniel Kiper , Igor Mammedov , Vitaly Kuznetsov , LKML , Balbir Singh , Heiko Carstens , Martin Schwidefsky , Tobias Regnery , Yasuaki Ishimatsu Subject: Re: [PATCH -v3 0/13] mm: make movable onlining suck less Message-ID: <20170510055317.GA26158@dhcp22.suse.cz> References: <20170421120512.23960-1-mhocko@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: 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 Tue 09-05-17 21:43:16, Dan Williams wrote: > On Fri, Apr 21, 2017 at 5:05 AM, Michal Hocko wrote: > > Hi, > > The last version of this series has been posted here [1]. It has seen > > some more testing (thanks to Reza Arbab and Igor Mammedov[2]), Jerome's > > and Vlastimil's review resulted in few fixes mostly folded in their > > respected patches. > > There are 4 more patches (patch 6+ in this series). I have checked the > > most prominent pfn walkers to skip over offline holes and now and I feel > > more comfortable to have this merged. All the reported issues should be > > fixed > > > > There is still a lot of work on top - namely this implementation doesn't > > support reonlining to a different zone on the zones boundaries but I > > will do that in a separate series because this one is getting quite > > large already and it should work reasonably well now. > > > > Joonsoo had some worries about pfn_valid and suggested to change its > > semantic to return false on offline holes but I would be rally worried > > to change a established semantic used by a lot of code and so I have > > introuduced pfn_to_online_page helper instead. If this is seen as a > > controversial point I would rather drop pfn_to_online_page and related > > patches as they are not stictly necessary because the code would be > > similarly broken as now wrt. offline holes. > > > > This is a rebase on top of linux-next (next-20170418) and the full > > series is in git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git > > try attempts/rewrite-mem_hotplug branch. > > > [..] > > Any thoughts, complains, suggestions? > > > > As a bonus we will get a nice cleanup in the memory hotplug codebase. > > arch/ia64/mm/init.c | 11 +- > > arch/powerpc/mm/mem.c | 12 +- > > arch/s390/mm/init.c | 32 +-- > > arch/sh/mm/init.c | 10 +- > > arch/x86/mm/init_32.c | 7 +- > > arch/x86/mm/init_64.c | 11 +- > > drivers/base/memory.c | 79 +++---- > > drivers/base/node.c | 58 ++---- > > include/linux/memory_hotplug.h | 40 +++- > > include/linux/mmzone.h | 44 +++- > > include/linux/node.h | 35 +++- > > kernel/memremap.c | 6 +- > > mm/compaction.c | 5 +- > > mm/memory_hotplug.c | 455 ++++++++++++++--------------------------- > > mm/page_alloc.c | 13 +- > > mm/page_isolation.c | 26 ++- > > mm/sparse.c | 48 ++++- > > 17 files changed, 407 insertions(+), 485 deletions(-) > > > > Shortlog says: > > Michal Hocko (13): > > mm: remove return value from init_currently_empty_zone > > mm, memory_hotplug: use node instead of zone in can_online_high_movable > > mm: drop page_initialized check from get_nid_for_pfn > > mm, memory_hotplug: get rid of is_zone_device_section > > mm, memory_hotplug: split up register_one_node > > mm, memory_hotplug: consider offline memblocks removable > > mm: consider zone which is not fully populated to have holes > > mm, compaction: skip over holes in __reset_isolation_suitable > > mm: __first_valid_page skip over offline pages > > mm, memory_hotplug: do not associate hotadded memory to zones until online > > mm, memory_hotplug: replace for_device by want_memblock in arch_add_memory > > mm, memory_hotplug: fix the section mismatch warning > > mm, memory_hotplug: remove unused cruft after memory hotplug rework > > > > [1] http://lkml.kernel.org/r/20170410110351.12215-1-mhocko@kernel.org > > [2] http://lkml.kernel.org/r/20170410162749.7d7f31c1@nial.brq.redhat.com > > > > > > The latest "attempts/rewrite-mem_hotplug" branch passes my regression > testing if I cherry-pick the following x86/mm fixes from mainline: > > e6ab9c4d4377 x86/mm/64: Fix crash in remove_pagetable() > 71389703839e mm, zone_device: Replace {get, put}_zone_device_page() > with a single reference to fix pmem crash I will make sure those will appear in the mmotm git tree (I will probably pull the whole tip/x86-mm-for-linus. > You can add: > > Tested-by: Dan Williams Thanks a lot for your testing! I will put your tested-by to patches where you were on the CC explicitly (and which might affect zone device) - mm, memory_hotplug: get rid of is_zone_device_section - mm, memory_hotplug: do not associate hotadded memory to zones until online - mm, memory_hotplug: replace for_device by want_memblock in arch_add_memory Let me know if you want other patches as well. -- Michal Hocko SUSE Labs