From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752075AbcIUHKW (ORCPT ); Wed, 21 Sep 2016 03:10:22 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:40196 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1755144AbcIUHKO (ORCPT ); Wed, 21 Sep 2016 03:10:14 -0400 X-IMSS-HAND-OFF-DIRECTIVE: 127.0.0.1:10026 From: "Aneesh Kumar K.V" To: Reza Arbab Cc: Michael Ellerman , Benjamin Herrenschmidt , Paul Mackerras , Rob Herring , Frank Rowand , Jonathan Corbet , Andrew Morton , Bharata B Rao , Nathan Fontenot , Stewart Smith , Alistair Popple , Balbir Singh , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, devicetree@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v2 3/3] mm: enable CONFIG_MOVABLE_NODE on powerpc In-Reply-To: <20160921054500.lrqktzjqjhuzewqg@arbab-laptop> References: <1473883618-14998-1-git-send-email-arbab@linux.vnet.ibm.com> <1473883618-14998-4-git-send-email-arbab@linux.vnet.ibm.com> <87h99cxv00.fsf@linux.vnet.ibm.com> <20160921054500.lrqktzjqjhuzewqg@arbab-laptop> Date: Wed, 21 Sep 2016 12:39:51 +0530 MIME-Version: 1.0 Content-Type: text/plain X-TM-AS-GCONF: 00 X-Content-Scanned: Fidelis XPS MAILER x-cbid: 16092107-0020-0000-0000-000009D8AF30 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00005795; HX=3.00000240; KW=3.00000007; PH=3.00000004; SC=3.00000185; SDB=6.00759764; UDB=6.00361244; IPR=6.00534148; BA=6.00004741; NDR=6.00000001; ZLA=6.00000005; ZF=6.00000009; ZB=6.00000000; ZP=6.00000000; ZH=6.00000000; ZU=6.00000002; MB=3.00012735; XFM=3.00000011; UTC=2016-09-21 07:10:10 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 16092107-0021-0000-0000-000055CA47A7 Message-Id: <87oa3hwwxs.fsf@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2016-09-21_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=2 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1609020000 definitions=main-1609210129 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Reza Arbab writes: > On Mon, Sep 19, 2016 at 11:59:35AM +0530, Aneesh Kumar K.V wrote: >>Movable node also does. >> memblock_set_bottom_up(true); >>What is the impact of that. Do we need changes equivalent to that ? Also >>where are we marking the nodes which can be hotplugged, ie where do we >>do memblock_mark_hotplug() ? > > These are related to the mechanism x86 uses to create movable nodes at > boot. The SRAT is parsed to mark any hotplug memory. That marking is > used later when initializing ZONE_MOVABLE for each node. [1] > > The bottom-up allocation is due to a timing issue [2]. There is a window > where kernel memory may be allocated before the SRAT is parsed. Any > bottom-up allocations done during that time will likely be in the same > (nonmovable) node as the kernel image. > > On power, I don't think we have a heuristic equivalent to that SRAT > memory hotplug info. So, we'll be limited to dynamically adding movable > nodes after boot. > > 1. http://events.linuxfoundation.org/sites/events/files/lcjp13_chen.pdf > 2. commit 79442ed189ac ("mm/memblock.c: introduce bottom-up allocation > mode") > What I was checking was how will one mark a node movable in ppc64 ? I don't see ppc64 code doing the equivalent of memblock_mark_hotplug(). So when you say "Onlining memory into ZONE_MOVABLE requires CONFIG_MOVABLE_NODE" where is that restriction ?. IIUC, should_add_memory_movable() will only return ZONE_MOVABLE only if it is non empty and MOVABLE_NODE will create a ZONE_MOVABLE zone by default only if it finds a memblock marked hotpluggable. So wondering if we are not calling memblock_mark_hotplug() how is it working. Or am I missing something ? -aneesh