Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp1764092ybb; Thu, 9 Apr 2020 08:35:20 -0700 (PDT) X-Google-Smtp-Source: APiQypKmLjDKkj+3z7xoRPLEoZO8R+bbWITOs9Hna6yODUMQEBih3qIrv1cZ9dC9OulnHIgSHBj4 X-Received: by 2002:ac8:346f:: with SMTP id v44mr4951970qtb.205.1586446520029; Thu, 09 Apr 2020 08:35:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586446520; cv=none; d=google.com; s=arc-20160816; b=1GkVszKKH6GpOkjaqtD2WK1tnmHkHhcAuhXylIKAjwAqBs5GGkARI8vDgu47JHRNX4 L43yyYT15gfMgN8Jy0Pmc5GZWwIrXIy2dKTVjWQ8ZNgZ2H5c9ORcNf8UrntmWOV3satx /nn/TT+VqrcOHgXMoPoFDXfOxbqH5fMg0Hi/cBaw7nYJeMboJNm9d3PU9owQCAHBMR/a aXR/9Mb4NhkowEVsFjdFD2n+dyPH3ba+DANF6gmFlDgbFKt93j5BHJhIhcO1mW3kXvct qQ6RCM+mt6Svgt9rqyF/pMbMwR/DDU7tT0nortSc1rCR/cS9sebY7jbgFwCV42PSmCyQ QSag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=eU8HVKPcEFasCzGb3YcmSlRzYlNKnx8U/U7SeGkKTM4=; b=gVm0dVDxfmXfAmdu4im0Tg+k+gwX5Kl5KWYfd1yjha8mqqQR56YZHy+TBiBLaKNCdW Ecb/iacfOEfWXPAxAFN2RAtryqk5NwM7ACF9SAyOmAy4IJE9LcPj/dCslRBfBGpyTR0Z MI14o08ODlXdcji+ePdoq0DNpfJdz9RpvCaD5DScDniwC0YbAWkr1uNf2kLjgriNF0je vHWIzFa9tBj+qS94oPC0dccQFxGdVUko6HswxeDBSPF27tWV7xytlZBtByVZz76kS7Eq 7N8OZSoE7jUZ6JMpmNDZwbaDw8xTGmWZ0z1Xtm1JlUIrI+G8x0pSm9yjk22opZbBdGhT tOnw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x2si6284242qvd.5.2020.04.09.08.35.03; Thu, 09 Apr 2020 08:35:20 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728302AbgDIPd1 (ORCPT + 99 others); Thu, 9 Apr 2020 11:33:27 -0400 Received: from mail-wr1-f65.google.com ([209.85.221.65]:33810 "EHLO mail-wr1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727919AbgDIPd0 (ORCPT ); Thu, 9 Apr 2020 11:33:26 -0400 Received: by mail-wr1-f65.google.com with SMTP id 65so12453075wrl.1; Thu, 09 Apr 2020 08:33:24 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=eU8HVKPcEFasCzGb3YcmSlRzYlNKnx8U/U7SeGkKTM4=; b=C+8DZyqPajHcUCsRWoTTPdTzp+9mYo3pWjlIfXH3GRnCf+cdk0McSbKJvwBTPTgbzN gG7RNoybDzIk7efDPLlLMjf/MCfapIHuElEML9W5yyiSqIQIs3Gvp1HRevesRnmSvT8j 0cU0lHiPhDHBSWVA0/r4NsmWDahWp+bgiGxJrE2LrGEtKCd9zpRzbsPziWcvh6lf0s9B cSHIDhSElFmJj76sRVqEZc4XSX40rLQE5T0sVzelazRG72Zp7IiS2azgaDcnrniQGzfe t+ymP8afc2A+pu+APkeCwunUP/M4jzCEqVyArme0EBuqyor5/IzJ/H+H4Gi9ygugTJ8n jzBw== X-Gm-Message-State: AGi0PuZK+e7JQOjWSdthtkNTSvEkXqFCAiQ0TqH1Ea4s8fmt5waXlbbF xNT7LM6ZYrAL6mjjcpIuqII= X-Received: by 2002:a5d:5112:: with SMTP id s18mr15000370wrt.306.1586446403503; Thu, 09 Apr 2020 08:33:23 -0700 (PDT) Received: from localhost (ip-37-188-180-223.eurotel.cz. [37.188.180.223]) by smtp.gmail.com with ESMTPSA id o67sm4335914wmo.5.2020.04.09.08.33.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Apr 2020 08:33:22 -0700 (PDT) Date: Thu, 9 Apr 2020 17:33:21 +0200 From: Michal Hocko To: Baoquan He Cc: Mike Rapoport , Hoan Tran , Catalin Marinas , Will Deacon , Andrew Morton , Vlastimil Babka , Oscar Salvador , Pavel Tatashin , Alexander Duyck , Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , "David S. Miller" , Heiko Carstens , Vasily Gorbik , Christian Borntraeger , "open list:MEMORY MANAGEMENT" , linux-arm-kernel@lists.infradead.org, linux-s390@vger.kernel.org, sparclinux@vger.kernel.org, x86@kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, lho@amperecomputing.com, mmorana@amperecomputing.com Subject: Re: [PATCH RFC] mm: remove CONFIG_HAVE_MEMBLOCK_NODE_MAP (was: Re: [PATCH v3 0/5] mm: Enable CONFIG_NODES_SPAN_OTHER_NODES by default for NUMA) Message-ID: <20200409153321.GQ18386@dhcp22.suse.cz> References: <1585420282-25630-1-git-send-email-Hoan@os.amperecomputing.com> <20200330074246.GA14243@dhcp22.suse.cz> <20200330092127.GB30942@linux.ibm.com> <20200330095843.GF14243@dhcp22.suse.cz> <20200331215618.GG30942@linux.ibm.com> <20200401054227.GC2129@MiWiFi-R3L-srv> <20200401075155.GH30942@linux.ibm.com> <20200402080144.GK22681@dhcp22.suse.cz> <20200409144119.GE2129@MiWiFi-R3L-srv> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200409144119.GE2129@MiWiFi-R3L-srv> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu 09-04-20 22:41:19, Baoquan He wrote: > On 04/02/20 at 10:01am, Michal Hocko wrote: > > On Wed 01-04-20 10:51:55, Mike Rapoport wrote: > > > Hi, > > > > > > On Wed, Apr 01, 2020 at 01:42:27PM +0800, Baoquan He wrote: > > [...] > > > > From above information, we can remove HAVE_MEMBLOCK_NODE_MAP, and > > > > replace it with CONFIG_NUMA. That sounds more sensible to store nid into > > > > memblock when NUMA support is enabled. > > > > > > Replacing CONFIG_HAVE_MEMBLOCK_NODE_MAP with CONFIG_NUMA will work, but > > > this will not help cleaning up the whole node/zone initialization mess and > > > we'll be stuck with two implementations. > > > > Yeah, this is far from optimal. > > > > > The overhead of enabling HAVE_MEMBLOCK_NODE_MAP is only for init time as > > > most architectures will anyway discard the entire memblock, so having it in > > > a UMA arch won't be a problem. The only exception is arm that uses > > > memblock for pfn_valid(), here we may also think about a solution to > > > compensate the addition of nid to the memblock structures. > > > > Well, we can make memblock_region->nid defined only for CONFIG_NUMA. > > memblock_get_region_node would then unconditionally return 0 on UMA. > > Essentially the same way we do NUMA for other MM code. I only see few > > direct usage of region->nid. > > Checked code again, seems HAVE_MEMBLOCK_NODE_MAP is selected directly in > all ARCHes which support it. Means HAVE_MEMBLOCK_NODE_MAP is enabled by > default on those ARCHes, and has no dependency on CONFIG_NUMA at all. > E.g on x86, it just calls free_area_init_nodes() in generic code path, > while free_area_init_nodes() is defined in CONFIG_HAVE_MEMBLOCK_NODE_MAP > ifdeffery scope. So I tend to agree with Mike to remove > HAVE_MEMBLOCK_NODE_MAP firstly on all ARCHes. We can check if it's worth > only defining memblock_region->nid for CONFIG_NUMA case after > HAVE_MEMBLOCK_NODE_MAP is removed. This can surely go in separate patches. What I meant to say is the region->nid is by definition 0 on !CONFIG_NUMA. -- Michal Hocko SUSE Labs