Received: by 2002:a05:6358:a55:b0:ec:fcf4:3ecf with SMTP id 21csp2388153rwb; Fri, 20 Jan 2023 02:11:16 -0800 (PST) X-Google-Smtp-Source: AMrXdXvVPD93dNR21iRRNJqmRDR/9VZu5EJ8yc+oJ/fncXtKIuPEfZmNtnSExij0KHp1HcQhTUpP X-Received: by 2002:a17:902:7614:b0:194:bcca:5e71 with SMTP id k20-20020a170902761400b00194bcca5e71mr8983154pll.68.1674209476722; Fri, 20 Jan 2023 02:11:16 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674209476; cv=none; d=google.com; s=arc-20160816; b=CZQ3maQ3D8GXJ9LH4VX3quzi/r6m8SmtbngMQeYoaYjyOX+YhkKUIJqzHKAqoAlujw C6bmRaGkiYi34w9FmYtBdkEE3YoP3oQG1xWSbmuZzog3rZg6ocj+X35qZyQ2Gn52ba0E Ike7RCxVNbtIYIJuX2MWU6enk6gUl+h2V0AjVTsI8nbOs1Ymd/Q9fjofnLT/fxDmlK/n 95MftojCcwkCWWuRSishxGTG0YORkSWlwPL3rc/NPiKmVuCvNC9v6HmqzIC+IMghqoMw 47lk6oo0+7tQVvd/m2k4Kd085u/4x9ROJRG6HjDzmYDxY9ss7fxYBP6mBqXDxQ6c942t oGgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:organisation:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=IFKsky2TzXV5FessdhuQQIxBOL18FkcblJbALMVQV3Q=; b=ehLRMaMSHusUVQ5KaBwZRKUEsYNpsWrEN3C9QDuICse7Q14K6tFHrgNl66VqjqWPUV t4yqQabI03fNL2F0OkdH3UoLXzOoV0D6UGgwO1+S4DmO419jDJMJUNzO4+I0EokGH9u2 iV9xR7Evb71mtoMitPxKQ+dJEEclxVYvTy92vhr/tYTim9r8u9msviV5z07yYkmYvnBd CwyVtK8B88Xq59nUJtyYxFLDwEk3Uidyj9QtN9R4phinEyH3PqJdA4tEeKJ2wBRiCapH 5C9GCX4zvvZs6G/5qfWK/kQcPGYtSYMtMI/AdBXrAlGwnS1C4pNOERX4BZHMwS+9jDLB rRHA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u9-20020a170903124900b00188d892999esi43628398plh.521.2023.01.20.02.11.08; Fri, 20 Jan 2023 02:11:16 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230105AbjATJUH (ORCPT + 48 others); Fri, 20 Jan 2023 04:20:07 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34614 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230110AbjATJUF (ORCPT ); Fri, 20 Jan 2023 04:20:05 -0500 Received: from zeeaster.vergenet.net (zeeaster.vergenet.net [206.189.110.174]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 89F16420E for ; Fri, 20 Jan 2023 01:20:02 -0800 (PST) Received: from momiji.horms.nl (86-93-216-223.fixed.kpn.net [86.93.216.223]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by zeeaster.vergenet.net (Postfix) with ESMTPSA id EBCFE20095; Fri, 20 Jan 2023 09:02:53 +0000 (UTC) Received: by momiji.horms.nl (Postfix, from userid 7100) id 0E8C794030F; Fri, 20 Jan 2023 10:02:53 +0100 (CET) Date: Fri, 20 Jan 2023 10:02:52 +0100 From: Simon Horman To: Baoquan He Cc: linux-kernel@vger.kernel.org, kexec@lists.infradead.org, linux-arm-kernel@lists.infradead.org, catalin.marinas@arm.com, will@kernel.org, thunder.leizhen@huawei.com, John.p.donnelly@oracle.com, wangkefeng.wang@huawei.com Subject: Re: [PATCH 2/2] arm64/kdump: add code comments for crashkernel reservation cases Message-ID: References: <20230117034921.185150-1-bhe@redhat.com> <20230117034921.185150-3-bhe@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230117034921.185150-3-bhe@redhat.com> Organisation: Horms Solutions BV X-Virus-Scanned: clamav-milter 0.103.7 at zeeaster X-Virus-Status: Clean X-Spam-Status: No, score=-4.0 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jan 17, 2023 at 11:49:21AM +0800, Baoquan He wrote: > This will help understand codes on crashkernel reservations on arm64. FWIIW, I think you can fold this into the first patch. And, although I have no good idea at this moment, I do wonder if the logic can be simplified - I for one really needed the comments to understand the retry logic. > Signed-off-by: Baoquan He > --- > arch/arm64/mm/init.c | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c > index 26a05af2bfa8..f88ad17cb20d 100644 > --- a/arch/arm64/mm/init.c > +++ b/arch/arm64/mm/init.c > @@ -177,6 +177,10 @@ static void __init reserve_crashkernel(void) > crash_base = memblock_phys_alloc_range(crash_size, CRASH_ALIGN, > search_base, crash_max); > if (!crash_base) { > + /* > + * For crashkernel=size[KMG]@offset[KMG], print out failure > + * message if can't reserve the specified region. > + */ > if (fixed_base) { > pr_warn("cannot reserve crashkernel region [0x%llx-0x%llx]\n", > search_base, crash_max); > @@ -188,6 +192,11 @@ static void __init reserve_crashkernel(void) > * high memory, the minimum required low memory will be > * reserved later. > */ > + /* > + * For crashkernel=size[KMG], if the first attempt was for > + * low memory, fall back to high memory, the minimum required > + * low memory will be reserved later. > + */ I think this duplicates the preceding comment. Perhaps just replace the earlier comment with this one. > if (!high && crash_max == CRASH_ADDR_LOW_MAX) { > crash_max = CRASH_ADDR_HIGH_MAX; > search_base = CRASH_ADDR_LOW_MAX; > @@ -195,6 +204,10 @@ static void __init reserve_crashkernel(void) > goto retry; > } > > + /* > + * For crashkernel=size[KMG],high, if the first attempt was for > + * high memory, fall back to low memory. > + */ > if (high && (crash_max == CRASH_ADDR_HIGH_MAX)) { > crash_max = CRASH_ADDR_LOW_MAX; > search_base = 0; > -- > 2.34.1 > > > _______________________________________________ > kexec mailing list > kexec@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/kexec >