From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932786AbbELJhX (ORCPT ); Tue, 12 May 2015 05:37:23 -0400 Received: from foss.arm.com ([217.140.101.70]:60207 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932343AbbELJhS (ORCPT ); Tue, 12 May 2015 05:37:18 -0400 Date: Tue, 12 May 2015 10:37:13 +0100 From: Mark Rutland To: Laura Abbott Cc: Russell King , Arnd Bergmann , Nicolas Pitre , Stefan Agner , Catalin Marinas , Will Deacon , "linux-kernel@vger.kernel.org" , Hans de Goede , Laura Abbott , "linux-arm-kernel@lists.infradead.org" Subject: Re: [PATCH] arm: Don't use memblock limit for the lowmem bound Message-ID: <20150512093713.GB16907@leverpostej> References: <1431399221-25337-1-git-send-email-labbott@fedoraproject.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1431399221-25337-1-git-send-email-labbott@fedoraproject.org> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, May 12, 2015 at 03:53:41AM +0100, Laura Abbott wrote: > From: Laura Abbott > > The memblock limit is currently used in find_limits > to find the bounds for ZONE_NORMAL. The memblock > limit may need to be rounded down a PMD size to ensure > allocations are fully mapped though. This has the side > effect of reducing the amount of memory in ZONE_NORMAL. > Since we generally want to optimize for more lowmem, fix > this by using arm_lowmem_limit to calculate the bounds. > This what is used for actually mapping lowmem anyway. > > Before: > # cat /proc/zoneinfo | grep managed > managed 62920 > > After: > # cat /proc/zoneinfo | grep managed > managed 63336 > > > > Signed-off-by: Laura Abbott I just gave this a spin on TC2, with the memory node hacked to provide 0x3ffffc00 bytes of RAM. Before: Memory: 1030380K/1046528K available (4828K kernel code, 154K rwdata, 1376K rodata, 264K init, 147K bss, 16148K reserved, 0K cma-reserved) $ cat /proc/zoneinfo | grep managed managed 257661 After: Memory: 1032424K/1048572K available (4828K kernel code, 154K rwdata, 1376K rodata, 264K init, 147K bss, 16148K reserved, 0K cma-reserved) $ cat /proc/zoneinfo | grep managed managed 258172 The patch itself looks sane to me, so: Acked-by: Mark Rutland Tested-by: Mark Rutland Thanks, Mark. > --- > arch/arm/mm/init.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c > index be92fa0..b4f9513 100644 > --- a/arch/arm/mm/init.c > +++ b/arch/arm/mm/init.c > @@ -89,7 +89,7 @@ __tagtable(ATAG_INITRD2, parse_tag_initrd2); > static void __init find_limits(unsigned long *min, unsigned long *max_low, > unsigned long *max_high) > { > - *max_low = PFN_DOWN(memblock_get_current_limit()); > + *max_low = PFN_DOWN(arm_lowmem_limit); > *min = PFN_UP(memblock_start_of_DRAM()); > *max_high = PFN_DOWN(memblock_end_of_DRAM()); > } > -- > 2.1.0 > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel >