From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 23A8DC3ABBC for ; Fri, 9 May 2025 07:47:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2FD1C6B00A1; Fri, 9 May 2025 03:47:15 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2AA696B00A7; Fri, 9 May 2025 03:47:15 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0D90D6B00A6; Fri, 9 May 2025 03:47:15 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id E194A6B00C6 for ; Fri, 9 May 2025 03:47:14 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 301D2121307 for ; Fri, 9 May 2025 07:47:16 +0000 (UTC) X-FDA: 83422588872.15.37E45F4 Received: from mail-pl1-f201.google.com (mail-pl1-f201.google.com [209.85.214.201]) by imf15.hostedemail.com (Postfix) with ESMTP id 6895CA000D for ; Fri, 9 May 2025 07:47:14 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=dcM14v33; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf15.hostedemail.com: domain of 3AbMdaAoKCCYEJCPIaWCPNIQQING.EQONKPWZ-OOMXCEM.QTI@flex--changyuanl.bounces.google.com designates 209.85.214.201 as permitted sender) smtp.mailfrom=3AbMdaAoKCCYEJCPIaWCPNIQQING.EQONKPWZ-OOMXCEM.QTI@flex--changyuanl.bounces.google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1746776834; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=SPB4CC6STDK5kdrBEcCYHTnvRNdt0f3J8K3gkRMCX5Y=; b=zBZSCO6fETUj0Fl2QPfRBpu+CibYbQRHYrODPBi7tW3UrIr1ai/8sR0Ah/fVJzqZHs4M/4 42Ts9L5DqRgf5TZpIKniPQMiukAcPhCmaZwlvEr8hcrgwc5Qlq2TvzH8jcAzE81ob098pF b8AYKUpjnQeJ3eoD+efSfSKhOSXdDnA= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1746776834; a=rsa-sha256; cv=none; b=W05/HKBj6UXk0X/O5UTd/EDlJen64SbJ7uE1mwfDowAlsGc5+YE7msw0US+cW0ptM9N+Ro Or4SEb3yItNPZaZiA/LkigPmklIx4+f8jN1GMzNGAiuvUxA66Zi3bB3UCqA1XDKIKzZKvo +iXuEoSKwJ7Rz3r5DJ9NUeGtNdhfPzg= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=dcM14v33; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf15.hostedemail.com: domain of 3AbMdaAoKCCYEJCPIaWCPNIQQING.EQONKPWZ-OOMXCEM.QTI@flex--changyuanl.bounces.google.com designates 209.85.214.201 as permitted sender) smtp.mailfrom=3AbMdaAoKCCYEJCPIaWCPNIQQING.EQONKPWZ-OOMXCEM.QTI@flex--changyuanl.bounces.google.com Received: by mail-pl1-f201.google.com with SMTP id d9443c01a7336-22fad174900so14070945ad.1 for ; Fri, 09 May 2025 00:47:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1746776833; x=1747381633; darn=kvack.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=SPB4CC6STDK5kdrBEcCYHTnvRNdt0f3J8K3gkRMCX5Y=; b=dcM14v33zihFQmG888P7m/0twpswIqLNvW+G85AhPa9rRPRAfKS/Flm9kK6/899AKx 9a5ESO5QxBOCwJ4VSrdC/PFVMEl/nTSZWPPKLoGskgZlQqIqkdsNOUgKubL+dMNGSDap yYgnAqvk+Bi/glWQepvKIUuxxC+x85X1M7NQm6zcO9FBnf7G4QrhiJnjDWD3dtmgWRAF qL3yIvvZzvb8PLd20C/RFqWicKH72tEYTd83UWDXnWW3EiKa62yKXLQRHugAgFEO6RGd SXjkv7LnY/Bmpnz/IAb7pTueBWekD5f83pYbr/Vri8u0rZjwT4KrJR0jom8Xmai8FOER ++wQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746776833; x=1747381633; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=SPB4CC6STDK5kdrBEcCYHTnvRNdt0f3J8K3gkRMCX5Y=; b=egQcq2lyPqgPVJNrxo8CRZ/ZTjQz9HUbkus3rkhVpF7d7sf6WJC9bXQZWMpA0RYOpC lbiWVwoRqJGXfxgiM5NEtDF9YtkHi3YrwvAIOed4FlvGZNGFGzqeb3bp/a/xShb14onu cr6iNH65Gao4vRfklIbDSNaBONUECLUQXfaHvjhfOz599ht1fQ/A/iIWU+6lrPTuu3dx sYlTT/QnNwLHMm8fwOzDL0YpMefKH82N+EPgyWAn7L4AiDqybSQB3ebtsShIJs4jARzK iPIdtu8wnF4M3AUB4hF/xXgn997UkL3kqXmiDBRtdYj03waF8cZL+Nr0NBlEM0fuReCZ 65gw== X-Forwarded-Encrypted: i=1; AJvYcCXwPpV9wtxrE1Wz3RAfEj/W6L4qwVmBnMbud4TAkHQV/Sq6Pspf7Qyn5Zvy+AcBHmQ3UMnXS53Nkg==@kvack.org X-Gm-Message-State: AOJu0YwlIF7/okz9pl6xRL1eke9mkQ9VmYT26VSuuzkbD49SNbaoVRon PCSiSO1kIvEW4PIszTUjwWWEMcfSAoe9cqyIhFoe826hQUxegHU6KMDX6hSyNEnXwlowMTbsF8L UImBSi7PFakz/dJJrKw== X-Google-Smtp-Source: AGHT+IFCD03lD8lWtCnQk0Y+4Q0M0617vfZrCF/OF6DrxVEuOIUh/cKjmOGrlsTtuIki4lqztgFf3ollX+1yRnV1 X-Received: from plbp12.prod.google.com ([2002:a17:903:174c:b0:227:e538:4d17]) (user=changyuanl job=prod-delivery.src-stubby-dispatcher) by 2002:a17:903:2311:b0:21a:7e04:7021 with SMTP id d9443c01a7336-22fc93ef210mr32126535ad.24.1746776833152; Fri, 09 May 2025 00:47:13 -0700 (PDT) Date: Fri, 9 May 2025 00:46:28 -0700 In-Reply-To: <20250509074635.3187114-1-changyuanl@google.com> Mime-Version: 1.0 References: <20250509074635.3187114-1-changyuanl@google.com> X-Mailer: git-send-email 2.49.0.1015.ga840276032-goog Message-ID: <20250509074635.3187114-11-changyuanl@google.com> Subject: [PATCH v8 10/17] x86/setup: use memblock_reserve_kern for memory used by kernel From: Changyuan Lyu To: akpm@linux-foundation.org, linux-kernel@vger.kernel.org Cc: anthony.yznaga@oracle.com, arnd@arndb.de, ashish.kalra@amd.com, benh@kernel.crashing.org, bp@alien8.de, catalin.marinas@arm.com, corbet@lwn.net, dave.hansen@linux.intel.com, devicetree@vger.kernel.org, dwmw2@infradead.org, ebiederm@xmission.com, graf@amazon.com, hpa@zytor.com, jgowans@amazon.com, kexec@lists.infradead.org, krzk@kernel.org, linux-arm-kernel@lists.infradead.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, luto@kernel.org, mark.rutland@arm.com, mingo@redhat.com, pasha.tatashin@soleen.com, pbonzini@redhat.com, peterz@infradead.org, ptyadav@amazon.de, robh@kernel.org, rostedt@goodmis.org, rppt@kernel.org, saravanak@google.com, skinsburskii@linux.microsoft.com, tglx@linutronix.de, thomas.lendacky@amd.com, will@kernel.org, x86@kernel.org, Changyuan Lyu Content-Type: text/plain; charset="UTF-8" X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 6895CA000D X-Rspam-User: X-Stat-Signature: i3efyp7hu5jynq58tyi976h1pijzxrjy X-HE-Tag: 1746776834-948477 X-HE-Meta: U2FsdGVkX1/JKuaim+B32O7BNnIzVwRP4ZRzPlPDSIQnOtOesPjtKk/o2lYyMey135Oy0/PFLzXUuXonycP1eHqJhOuiLYoQYUn70RjDEQFRhn1jA4ZkI4TtwcwMMHlLYpp7Wiwv0295m1blGj8Sk+E56pqQdzqmwz2beBmEVA99z+oixkvSVNOLxJA2Ju0yi2GsR/TxLDfZsd6np+Oj8+Ld/nV/cnLNkdI+G3CF3tseXZJGUVyVSFjNWbCQcbMkWStmcDi0IgUp5Kwbm/tJNcyKzgdwtx7KZpgcUuIhKp+yMGcs+DgKcbxAlknRfVRoZoEfckahR4/d27XWsdYlhDJ/ii9ezhg7ibBl2b+Us0siU8hJVlY/lSLZHxzw0AqDT1Llb/lkiTyOVBlhScSof5oEPxQMmxM0d+N6KQLXS325wudyf9+/h/OstiRZQUy0aeK1DrOYztHB615XNkyXIWjxHfgXeZvzxws2JcJOUD2qDKcbpn+b4HQDsuiTEdxYkIUfgKRUTHPrqfHDtcHgzuxf5Kyg2iRyUxZv/1TV1GtJRnur80CZrGZP/KCL2y2F8YeTpdtpDcvN//SrIOSmGsOqAWd+7EjgID3/2FCYtOdmqT2zrQfJe7TiTMWy5s0v5QQgF9ggk9uRluGvxXnl5955BaDgwBmxuhM5PAbBTBRM+eR1FakzWxlo3hJTnWdVQR4zRNEioFEsCb+QZlqa1MJVhRYNVLtfKjqux8Cp63G5ZclchAwfed35ezngG9OStyoJ2Dx+GhinW26lSwQGtcu39kJ9IDjwUbCnRNgfVTdKkZQhfgMf/a2s6b1UTx8CNeN1StXDiYkRdsO14s2Sehn7E6MWGpB82YrjsX8muSm912YmNfTWZiD4dk97bLUs25cNITlK75w97O4fODL4d0SZe8ZnEsN1yYtkC17R7tReK7Oy+mcbk0GMg4KG+yb7M7woPhju3csnDiMaN3n /mQRJcuS OZqC6v+feY/ZMtIRpnc5wVFwJaBrmTCfog18snkO6UyHEd8r0hwkcaDzna3T0vBgqbD9I16jv+JwzOtpVdp4TuRCEExg1eia/aYi9mNA1pUHI2I1jBpezfAzO1dbe93Oajup+yXKWi0igJBy3JgnhZwEunI4a639Jd0FFfzzJJrUqhLBNfElESdLxnEwPjY1SPQntPBVkPqZxiD02udcPmbPSCEvy1r/Rb4YWfrKxcNbbqOVoyFgd8tcih51xfhLKlSbtFieiR7j4JOmmpxLaVDoPcJWmcvwdH5QTNRBgj6ZLYeg4VwbaxqyDCdVF6KTfP3Cf5WCqUaV5g61lOQhgTHkhkUntnl7czRuBWAGJh+z1ilSZ6FMuOoVNi1UzzICoX3pKyE4RjUyN2/wiZO2pbtxwTI5I5HXkehA1luwpNkrNF5eLqtz4EYWsL5kaBPMhusToV9L9BDniDKF2lpGflq63B0qUBhp8riGHrlOIHcA+gTEGpfda+6Ugp6AQ8HSVZxc00lJu9foN/Kw6JCcP4/TExjIocXdy3ZQb0n2BDtvd4JzrUePz6CsqpXg7bEWgT8+qF60CBnVvBuljr3JqV8OXkCV7xhegXW/B87J0Jw9HXZoT35Qguzz4slu76px/4EiMs9i9fl60dYWd9Fh2pzmCt7Zv/UPJxd1f X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: "Mike Rapoport (Microsoft)" memblock_reserve() does not distinguish memory used by firmware from memory used by kernel. The distinction is nice to have for accounting of early memory allocations and reservations, but it is essential for kexec handover (kho) to know how much memory kernel consumes during boot. Use memblock_reserve_kern() to reserve kernel memory, such as kernel image, initrd and setup data. Signed-off-by: Mike Rapoport (Microsoft) Signed-off-by: Changyuan Lyu Acked-by: Dave Hansen --- arch/x86/kernel/setup.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index 9d2a13b37833c..766176c4f5ee8 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c @@ -286,8 +286,8 @@ static void __init cleanup_highmap(void) static void __init reserve_brk(void) { if (_brk_end > _brk_start) - memblock_reserve(__pa_symbol(_brk_start), - _brk_end - _brk_start); + memblock_reserve_kern(__pa_symbol(_brk_start), + _brk_end - _brk_start); /* Mark brk area as locked down and no longer taking any new allocations */ @@ -360,7 +360,7 @@ static void __init early_reserve_initrd(void) !ramdisk_image || !ramdisk_size) return; /* No initrd provided by bootloader */ - memblock_reserve(ramdisk_image, ramdisk_end - ramdisk_image); + memblock_reserve_kern(ramdisk_image, ramdisk_end - ramdisk_image); } static void __init reserve_initrd(void) @@ -413,7 +413,7 @@ static void __init add_early_ima_buffer(u64 phys_addr) } if (data->size) { - memblock_reserve(data->addr, data->size); + memblock_reserve_kern(data->addr, data->size); ima_kexec_buffer_phys = data->addr; ima_kexec_buffer_size = data->size; } @@ -553,7 +553,7 @@ static void __init memblock_x86_reserve_range_setup_data(void) len = sizeof(*data); pa_next = data->next; - memblock_reserve(pa_data, sizeof(*data) + data->len); + memblock_reserve_kern(pa_data, sizeof(*data) + data->len); if (data->type == SETUP_INDIRECT) { len += data->len; @@ -567,7 +567,7 @@ static void __init memblock_x86_reserve_range_setup_data(void) indirect = (struct setup_indirect *)data->data; if (indirect->type != SETUP_INDIRECT) - memblock_reserve(indirect->addr, indirect->len); + memblock_reserve_kern(indirect->addr, indirect->len); } pa_data = pa_next; @@ -770,8 +770,8 @@ static void __init early_reserve_memory(void) * __end_of_kernel_reserve symbol must be explicitly reserved with a * separate memblock_reserve() or they will be discarded. */ - memblock_reserve(__pa_symbol(_text), - (unsigned long)__end_of_kernel_reserve - (unsigned long)_text); + memblock_reserve_kern(__pa_symbol(_text), + (unsigned long)__end_of_kernel_reserve - (unsigned long)_text); /* * The first 4Kb of memory is a BIOS owned area, but generally it is -- 2.49.0.1015.ga840276032-goog