From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935325AbdEOSYU (ORCPT ); Mon, 15 May 2017 14:24:20 -0400 Received: from userp1040.oracle.com ([156.151.31.81]:49349 "EHLO userp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932886AbdEOSYQ (ORCPT ); Mon, 15 May 2017 14:24:16 -0400 Subject: Re: [v3 9/9] s390: teach platforms not to zero struct pages memory To: Heiko Carstens Cc: linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org, linux-mm@kvack.org, linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org, borntraeger@de.ibm.com, davem@davemloft.net References: <1494003796-748672-1-git-send-email-pasha.tatashin@oracle.com> <1494003796-748672-10-git-send-email-pasha.tatashin@oracle.com> <20170508113624.GA4876@osiris> From: Pasha Tatashin Message-ID: <0669a945-4540-096e-799a-2d2b3c18abaa@oracle.com> Date: Mon, 15 May 2017 14:24:00 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.0 MIME-Version: 1.0 In-Reply-To: <20170508113624.GA4876@osiris> 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 Hi Heiko, Thank you for looking at this patch. I am worried to make the proposed change, because, as I understand in this case we allocate memory not for "struct page"s but for table that hold them. So, we will change the behavior from the current one, where this table is allocated zeroed, but now it won't be zeroed. Pasha > > If you add the hunk below then this is > > Acked-by: Heiko Carstens > > diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c > index ffe9ba1aec8b..bf88a8b9c24d 100644 > --- a/arch/s390/mm/vmem.c > +++ b/arch/s390/mm/vmem.c > @@ -272,7 +272,7 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node) > if (pte_none(*pt_dir)) { > void *new_page; > > - new_page = vmemmap_alloc_block(PAGE_SIZE, node, true); > + new_page = vmemmap_alloc_block(PAGE_SIZE, node, VMEMMAP_ZERO); > if (!new_page) > goto out; > pte_val(*pt_dir) = __pa(new_page) | pgt_prot; >