From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752309AbdHNNcK (ORCPT ); Mon, 14 Aug 2017 09:32:10 -0400 Received: from userp1040.oracle.com ([156.151.31.81]:44807 "EHLO userp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751540AbdHNNcF (ORCPT ); Mon, 14 Aug 2017 09:32:05 -0400 Subject: Re: [v6 01/15] x86/mm: reserve only exiting low pages To: Michal Hocko Cc: linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org, linux-mm@kvack.org, linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org, linux-arm-kernel@lists.infradead.org, x86@kernel.org, kasan-dev@googlegroups.com, borntraeger@de.ibm.com, heiko.carstens@de.ibm.com, davem@davemloft.net, willy@infradead.org, ard.biesheuvel@linaro.org, will.deacon@arm.com, catalin.marinas@arm.com, sam@ravnborg.org References: <1502138329-123460-1-git-send-email-pasha.tatashin@oracle.com> <1502138329-123460-2-git-send-email-pasha.tatashin@oracle.com> <20170811080706.GC30811@dhcp22.suse.cz> <47ebf53b-ea8b-1822-a63a-3682ed2f4753@oracle.com> <20170814114011.GG19063@dhcp22.suse.cz> From: Pasha Tatashin Message-ID: <8da779a0-ade4-e43e-3b14-2686e347f8ab@oracle.com> Date: Mon, 14 Aug 2017 09:30:35 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <20170814114011.GG19063@dhcp22.suse.cz> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Source-IP: userv0022.oracle.com [156.151.31.74] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org >> Correct, the pgflags asserts were triggered when we were setting reserved >> flags to struct page for PFN 0 in which was never initialized through >> __init_single_page(). The reason they were triggered is because we set all >> uninitialized memory to ones in one of the debug patches. > > And why don't we need the same treatment for other architectures? > I have not seen similar issues on other architectures. At least this low memory reserve is x86 specific for BIOS purposes: Documentation/admin-guide/kernel-parameters.txt 3624 reservelow= [X86] 3625 Format: nn[K] 3626 Set the amount of memory to reserve for BIOS at 3627 the bottom of the address space. If there are similar cases with other architectures, they will be caught by the last patch in this series, where all allocated memory is set to ones, and page flags asserts will be triggered. I have boot-tested on SPARC, ARM, and x86. Pasha