From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-yx1-f53.google.com (mail-yx1-f53.google.com [74.125.224.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 30F533C81B5 for ; Thu, 30 Jul 2026 19:59:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.224.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785441548; cv=none; b=oyq5pMDFv4zp+ENvsxmisfacNXxQif5JW08r9ACRMWqvLbKF4QXxqiV8gTP/NIiDMl+9GS4rZWiqdg8UNSquXdU/c0Acie88ewKl3f2JCbwmWxhuGMnJ0Rl2WXcBYL4pHR8ovrgYdYS3H/EkrjHlByglLrUqF0ptrbapjuTvrHw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785441548; c=relaxed/simple; bh=TGRp+2CqscCYAPn3tF8GqHew6N1j0t5jlV/76q9HVd8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bpKPazcgYcDdmvFlEI/jBeed1vxsBVUaobMNlkrGeTZGC2ldX0HbFZFWC3KugELUNhghCT4ij0+eYa3qJ/Zt/29fN7UT0QFunrcx3eRdN3ogkuUoak6S5HmcMKrsL79pnwKa/8pTco9UcOiTX56Gi+OjBZyBPD6udiyA4t9lP8g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=gupQbdXz; arc=none smtp.client-ip=74.125.224.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="gupQbdXz" Received: by mail-yx1-f53.google.com with SMTP id 956f58d0204a3-66807ba2f0fso200300d50.3 for ; Thu, 30 Jul 2026 12:59:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785441546; x=1786046346; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=Fohv3zQW8en/CdgCeYM+plUC/PZuMWYlz5y9Y9oqxSU=; b=gupQbdXz+BTq2KZm7jqVu4KaBsLrmMBMaX/suFRFOPn1xscrXqOZv6frIGXdHZ0vg1 +VFy8aPhM1ZpmgJv4/o0Jk7KOF91yzR+lBtP5sCcw2wESs0h13h786jMj9e5B/anCHJw utXiskUCzOnWTi2hipJsEIOfRN+n3EX9NbB86qZfeRI7/k5g1A397dYZ3wUELu6M+chi PnGBBXUErH/G3Nii421bTtykzHj+TR5DacTtSlLYE5l2zuTjAfwGDESamFDkUVjxpQzQ OcnkSVCu3O14RAFs1z70f7m0kXrbXHzIu93rq+qgqHZGNg4vABpxIF1Pg/+i+CmA5WWx QSjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785441546; x=1786046346; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=Fohv3zQW8en/CdgCeYM+plUC/PZuMWYlz5y9Y9oqxSU=; b=ENAia1T8gZTetlfdtdY1Ti8mRAs5sQqlVBeEf3A0q+d10Qh74lV3GskD5MAvtCaIqV DnLC4J7Oy0bIgNYhRtrXJ22hZwKWOI5+JBQFTOX9C0uRil8ni800PSNlSKPqmcRuGWaC /6NtOqXSmcVrRsDy2yIazge6x5c1YWEDY1hE8DKrFrkYgpdSJshMLiyVVqbS3x2kPyDC CYbFUGE6nINEmfRRK8vdCHcLlCwIXyH87YcumvvRP+6LcPSDyzOSt+r4czpSXWW9HUkz 7yIruhZg8YCBWUS8mf2POGYTUn5kXnkorxcJQBlEDX8ZA/lo+TrA1gkm0Z2nIU4Yg4gV QBsw== X-Gm-Message-State: AOJu0YzBDGt8phIMzbFAbprfJJmgubESdaAldrMUiOdIPnmlP73hVYQf 4wk84GjauNalFS6hH7mSz98QAqrXk6CyDBVauBEpgVQ2AY0DFbh+ZVUP6trY X-Gm-Gg: AR+sD10FBKRTo2eT2OYfSnVErp0lpIM5qiH4d6d7uJZJ3LbEl0Hf4+rRTGzPqMHXPb8 lZuKTeEXt25/xVoN+/Qlef+/YWz0B9ix7zRySeAq5025cLYVFEnScx60k3qA6WCBC5XAPuS4XOY hfzk5sbqq8rQsWCWJBWoOCjz+vy1flANUie7ydgErKhFYRw1UWdZ9+5i6o3rusKsWBm3Nm6AccN X/9/rR1vXBDPjwPB4VbUk1vzW82t275ypLh9WbAlYY7Uyqmst1bYV/M6z7/cK49ZCN4HFW5n+S1 tTVuCFPJUbSTZr8b/us/Hn4QgSWaerlD7W56yiZjjFuyNH5kIZMjdTNWEsSnhSKnu9wlOR3pq7t rJUbKsKEKYFfsQQBTdAc7lQ/OKSGLrlZSXxcsSaIDSuPQV/mYTCF9FZ30XupxlOKJmj1Kpn2Ep3 POZIMTiz+slekDfnwb05+ie5m2mdRhLV9RKB+PywKafg== X-Received: by 2002:a05:690e:ed4:b0:667:7bd5:f025 with SMTP id 956f58d0204a3-6692f6ecf8dmr2025863d50.53.1785441545917; Thu, 30 Jul 2026 12:59:05 -0700 (PDT) Received: from citadel.lan ([2600:6c4a:4df0:2c10::1dba]) by smtp.gmail.com with ESMTPSA id 956f58d0204a3-6692c925a87sm1961623d50.15.2026.07.30.12.59.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 Jul 2026 12:59:05 -0700 (PDT) From: Brian Gerst To: linux-kernel@vger.kernel.org, x86@kernel.org Cc: Thomas Gleixner , Borislav Petkov , Ard Biesheuvel , Juergen Gross , Tom Lendacky , Brian Gerst Subject: [PATCH v2 4/5] x86/boot/64: Remove copy_bootdata() call Date: Thu, 30 Jul 2026 15:58:53 -0400 Message-ID: <20260730195854.421115-5-brgerst@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260730195854.421115-1-brgerst@gmail.com> References: <20260730195854.421115-1-brgerst@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit On a normal boot, copy_bootdata() is first called in x86_64_start_kernel(). The second call in x86_64_start_reservations() is effectively a no-op. Xen PV directly initializes boot_params, so it does not need to call copy_bootdata() at all. Remove the unnecessary call to copy_bootdata() from x86_64_start_reservations(). Signed-off-by: Brian Gerst Cc: Juergen Gross --- arch/x86/include/asm/setup.h | 2 +- arch/x86/kernel/head64.c | 8 ++------ arch/x86/xen/enlighten_pv.c | 2 +- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/arch/x86/include/asm/setup.h b/arch/x86/include/asm/setup.h index d23f4272d930..18a4d3826af7 100644 --- a/arch/x86/include/asm/setup.h +++ b/arch/x86/include/asm/setup.h @@ -130,7 +130,7 @@ void __init mk_early_pgtbl_32(void); #else asmlinkage void __init __noreturn x86_64_start_kernel(char *real_mode); -asmlinkage void __init __noreturn x86_64_start_reservations(char *real_mode_data); +asmlinkage void __init __noreturn x86_64_start_reservations(void); #endif /* __i386__ */ #endif /* _SETUP */ diff --git a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c index 9f19635c6390..d895376e9346 100644 --- a/arch/x86/kernel/head64.c +++ b/arch/x86/kernel/head64.c @@ -276,15 +276,11 @@ asmlinkage __visible void __init __noreturn x86_64_start_kernel(char * real_mode /* set init_top_pgt kernel high mapping*/ init_top_pgt[511] = early_top_pgt[511]; - x86_64_start_reservations(real_mode_data); + x86_64_start_reservations(); } -void __init __noreturn x86_64_start_reservations(char *real_mode_data) +void __init __noreturn x86_64_start_reservations(void) { - /* version is always not zero if it is copied */ - if (!boot_params.hdr.version) - copy_bootdata(__va(real_mode_data)); - x86_early_init_platform_quirks(); switch (boot_params.hdr.hardware_subarch) { diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c index 6aa13d19c0a4..e6e2666da5a1 100644 --- a/arch/x86/xen/enlighten_pv.c +++ b/arch/x86/xen/enlighten_pv.c @@ -1556,7 +1556,7 @@ asmlinkage __visible void __init xen_start_kernel(struct start_info *si) /* Start the world */ cr4_init_shadow(); /* 32b kernel does this in i386_start_kernel() */ - x86_64_start_reservations((char *)__pa_symbol(&boot_params)); + x86_64_start_reservations(); } static int xen_cpu_up_prepare_pv(unsigned int cpu) -- 2.55.0