Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp3656859pxf; Mon, 22 Mar 2021 11:37:22 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyq+tPbAWbs7OgY176lPWHwDv9vcSgd8aw+Sv7I0Z77Ub4lNH9Ow/6aIERkSX04qtkCYl82 X-Received: by 2002:aa7:ce16:: with SMTP id d22mr969516edv.95.1616438242161; Mon, 22 Mar 2021 11:37:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1616438242; cv=none; d=google.com; s=arc-20160816; b=Jr1302/1SE2rD9iNOqnnNzMYPdzlhTC9LNTVxG185la/LIa8r9z7PK7fZl+Dm32P3C aGedFf7Idmla4EF8YK6zpCmfbn1i2YI9EwlDi3xZ5WBb3AAFR2ZBL1gna+cs9U7rVePv +fj6UFAoCtSFbYBEe/6gmutuM7/XVx67nJFNrG33qmQ4EG/ZN41+11uKOkNpWWTYBOnT KumYcM1GtHOtsS7BNKh6r6E0M4WUue3UCpwM/2Cgd66aFi0r8pLpRhVg298xxfyJJiWg 0OtB5yIrlkDYDYlSoe/8YPEdPc/PU1Xl4iSb5JKX+dA0zD1Nz7Lgdc7o41RoLDRNIDFA OeOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:organization :from:references:cc:to:subject:dkim-signature; bh=Ty7sAVs+UNafvjH6QynuwOmpwAWFADfLSWscYpexmW4=; b=U/vP/gIjeUKZxhtfygDC6ueLJYfcMQrMmAgO6rbRGS2Fd3/MBhxLyMR4ukZ+2J0Lep up1ewuvZb8BHB3HYVbrg04BEMAZzEU2H5TxyMTQ/VdGWvQVKc87N5yeyj3UCvzFhBoBo sx1qN0bA7fEe9F77+N8BhPy2294nl5ii6HxIs/vCUvz5/VlcOuQSNUSAXfC1mQHsfizt 7lu+aIwqV+Tm4PfgNQ4uNRDUjJgF2uOtZVJ4VYfDh5lIuuC1p6U/jF3eYRnAo19YxMMC iy4HViUPL3QyUDFU2Rgwq+E57GcSPzvvE6RWOBvgYf1ugyzHqnnve2ybNuDGCliXyRGK QBww== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@jonmasters-org.20150623.gappssmtp.com header.s=20150623 header.b=10COgiJv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id du13si11471832ejc.690.2021.03.22.11.36.58; Mon, 22 Mar 2021 11:37:22 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@jonmasters-org.20150623.gappssmtp.com header.s=20150623 header.b=10COgiJv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231152AbhCVSf7 (ORCPT + 99 others); Mon, 22 Mar 2021 14:35:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46224 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229840AbhCVSfV (ORCPT ); Mon, 22 Mar 2021 14:35:21 -0400 Received: from mail-qk1-x730.google.com (mail-qk1-x730.google.com [IPv6:2607:f8b0:4864:20::730]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8CE8BC061574 for ; Mon, 22 Mar 2021 11:35:21 -0700 (PDT) Received: by mail-qk1-x730.google.com with SMTP id y18so11628834qky.11 for ; Mon, 22 Mar 2021 11:35:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jonmasters-org.20150623.gappssmtp.com; s=20150623; h=subject:to:cc:references:from:organization:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=Ty7sAVs+UNafvjH6QynuwOmpwAWFADfLSWscYpexmW4=; b=10COgiJvzqPsA9rvMaiYoVJAwuBKsknTLcxcJ3o71g/vp7aNWTbH7cNYpleFgOw0dM Q2YDotgAsWJ34bBzNbkj/jWpFc498pBUouqJjx99tSFgXtkBlCo/YvDL3Spre/H5MAok bmuEoQsSc1w1yakV/la3mZdgFTrxc+8D5Om6T/mjEBhPg6bCjRkR1qm7Sr5gHkZABkZ8 9sIzpPQrA+YBgGEdkGSxklPZaAVT7bZkucX52dWB1I1fXZOOrLDZ4DYY25AysVd8pa9c +ifOSacAMJJ+nug8V3Vyki7LpVO1Cwh/ErCtaMCv5F2REwT5+22Y9rEFoYJyGy4eCqfu H3oQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=Ty7sAVs+UNafvjH6QynuwOmpwAWFADfLSWscYpexmW4=; b=adsMalH1qaIuScpXeVLNjt3SBdwAe5D6PkN1BhQvJ/oyWwphOpsDLOvyg8gn9lxAs5 khWRp2pyZiiE/Pw7Ik9svSShy0eI1A88KZfdSUlzKbzYsIlRWBQBk5r96GfuokN21Fsu OHooR6W4Y/YCzODkbex9X5RNYfalzgfHqyDzgMc2uIHNazv7+kz0W2xBmYuMKEnsO1dS MAYD2BwetOnfrXKcaAJ4GKQOHKD2GieXvYMWYycYhxkHOb9rdLfJ13zlR6pj/vL5/nzy jhuDX8CZfrUJRaB17EglDo5xRTr4YSXj0faP/QLigqTBsYfdgf67v4IqvN3Olg42ucw/ Xnwg== X-Gm-Message-State: AOAM531y5EPU12c5pMa3eRdLOPQ0M+zS6565iAaD2sM3HYqvgK7kWy2H dFniFPgjdJqf7WuT7ubJRauOHg== X-Received: by 2002:a37:e110:: with SMTP id c16mr1444098qkm.67.1616438120672; Mon, 22 Mar 2021 11:35:20 -0700 (PDT) Received: from independence.bos.jonmasters.org (Boston.jonmasters.org. [50.195.43.97]) by smtp.gmail.com with ESMTPSA id b17sm9442287qtp.73.2021.03.22.11.35.19 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 22 Mar 2021 11:35:20 -0700 (PDT) Subject: Re: [PATCH v3 2/2] arm64: mm: reserve CMA and crashkernel in ZONE_DMA32 To: Nicolas Saenz Julienne , catalin.marinas@arm.com, linux-kernel@vger.kernel.org Cc: Qian Cai , Will Deacon , linux-arm-kernel@lists.infradead.org References: <20191107095611.18429-1-nsaenzjulienne@suse.de> <20191107095611.18429-3-nsaenzjulienne@suse.de> From: Jon Masters Organization: World Organi{s,z}ation of Broken Dreams Message-ID: <4f094513-507d-566d-a0e2-a30ea36f64c9@jonmasters.org> Date: Mon, 22 Mar 2021 14:34:38 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 MIME-Version: 1.0 In-Reply-To: <20191107095611.18429-3-nsaenzjulienne@suse.de> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Nicolas, On 11/7/19 4:56 AM, Nicolas Saenz Julienne wrote: > With the introduction of ZONE_DMA in arm64 we moved the default CMA and > crashkernel reservation into that area. This caused a regression on big > machines that need big CMA and crashkernel reservations. Note that > ZONE_DMA is only 1GB big. > > Restore the previous behavior as the wide majority of devices are OK > with reserving these in ZONE_DMA32. The ones that need them in ZONE_DMA > will configure it explicitly. > > Reported-by: Qian Cai > Signed-off-by: Nicolas Saenz Julienne > --- > arch/arm64/mm/init.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c > index 580d1052ac34..8385d3c0733f 100644 > --- a/arch/arm64/mm/init.c > +++ b/arch/arm64/mm/init.c > @@ -88,7 +88,7 @@ static void __init reserve_crashkernel(void) > > if (crash_base == 0) { > /* Current arm64 boot protocol requires 2MB alignment */ > - crash_base = memblock_find_in_range(0, ARCH_LOW_ADDRESS_LIMIT, > + crash_base = memblock_find_in_range(0, arm64_dma32_phys_limit, > crash_size, SZ_2M); > if (crash_base == 0) { > pr_warn("cannot allocate crashkernel (size:0x%llx)\n", > @@ -454,7 +454,7 @@ void __init arm64_memblock_init(void) > > high_memory = __va(memblock_end_of_DRAM() - 1) + 1; > > - dma_contiguous_reserve(arm64_dma_phys_limit ? : arm64_dma32_phys_limit); > + dma_contiguous_reserve(arm64_dma32_phys_limit); > } > > void __init bootmem_init(void) Can we get a bit more of a backstory about what the regression was on larger machines? If the 32-bit DMA region is too small, but the machine otherwise has plenty of memory, the crashkernel reservation will fail. Most e.g. enterprise users aren't going to respond to that situation by determining the placement manually, they'll just not have a crashkernel. Jon. -- Computer Architect