From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933666AbdKBPHf (ORCPT ); Thu, 2 Nov 2017 11:07:35 -0400 Received: from foss.arm.com ([217.140.101.70]:60984 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755768AbdKBPHd (ORCPT ); Thu, 2 Nov 2017 11:07:33 -0400 Cc: Sudeep Holla , "Kirill A. Shutemov" , Ingo Molnar , Thomas Gleixner , Peter Zijlstra , hpa@zytor.com, Andrew Morton , gorcunov@openvz.org, luto@amacapital.net, bp@suse.de, open list , torvalds@linux-foundation.org, Will Deacon , Catalin Marinas Subject: Re: [tip:x86/mm] mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y To: "Kirill A. Shutemov" References: <20170929140821.37654-2-kirill.shutemov@linux.intel.com> <20171102133433.hisnvz5iwmwdzjlz@node.shutemov.name> <44b8b5c8-0e9d-0534-0d0c-49618b292802@arm.com> <20171102141210.gu4cwpoq2e6o7liu@black.fi.intel.com> From: Sudeep Holla Organization: ARM Message-ID: <3917e456-cf86-d25d-b9d3-65a70d4e2df2@arm.com> Date: Thu, 2 Nov 2017 15:07:27 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <20171102141210.gu4cwpoq2e6o7liu@black.fi.intel.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 02/11/17 14:12, Kirill A. Shutemov wrote: > On Thu, Nov 02, 2017 at 01:42:42PM +0000, Sudeep Holla wrote: >> >> >> On 02/11/17 13:34, Kirill A. Shutemov wrote: >>> On Thu, Nov 02, 2017 at 12:31:54PM +0000, Sudeep Holla wrote: >>>> (+Will, Catalin) >>>> >>>> On Fri, Oct 20, 2017 at 1:27 PM, tip-bot for Kirill A. Shutemov >>>> wrote: >>>>> Commit-ID: 83e3c48729d9ebb7af5a31a504f3fd6aff0348c4 >>>>> Gitweb: https://git.kernel.org/tip/83e3c48729d9ebb7af5a31a504f3fd6aff0348c4 >>>>> Author: Kirill A. Shutemov >>>>> AuthorDate: Fri, 29 Sep 2017 17:08:16 +0300 >>>>> Committer: Ingo Molnar >>>>> CommitDate: Fri, 20 Oct 2017 13:07:09 +0200 >>>>> >>>>> mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y >>>>> >>>>> Size of the mem_section[] array depends on the size of the physical address space. >>>>> >>>>> In preparation for boot-time switching between paging modes on x86-64 >>>>> we need to make the allocation of mem_section[] dynamic, because otherwise >>>>> we waste a lot of RAM: with CONFIG_NODE_SHIFT=10, mem_section[] size is 32kB >>>>> for 4-level paging and 2MB for 5-level paging mode. >>>>> >>>>> The patch allocates the array on the first call to sparse_memory_present_with_active_regions(). >>>>> >>>> >>>> I am seeing a boot failure with this patch in linux-next today(20171102) >>> >>> Could you share the kernel config? >>> >> >> It's the default config on arm64. Generated file is almost 160kB, I will >> send it to you off-list. >> >>> Have you bisected the failure to the commit? >>> >> I just reverted this commit as I suspected that and it boots fine after >> the revert. > > Could you try the patch below instead? > > From 4a9d843f9d939d958612b0079ebe5743f265e1e0 Mon Sep 17 00:00:00 2001 > From: "Kirill A. Shutemov" > Date: Thu, 2 Nov 2017 17:02:29 +0300 > Subject: [PATCH] mm, sparse: Fix boot on arm64 > > Since 83e3c48729d9 ("mm/sparsemem: Allocate mem_section at runtime for > CONFIG_SPARSEMEM_EXTREME=y") we allocate mem_section dynamically in > sparse_memory_present_with_active_regions(). But some architectures, like > arm64, don't use the routine to initialize sparsemem. > > Let's move the initialization into memory_present() it should cover all > architectures. > Thanks for the quick fix. It boots fine with this patch. Reported-and-tested-by: Sudeep Holla -- Regards, Sudeep