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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5E4A5CDB474 for ; Tue, 17 Oct 2023 07:23:21 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234603AbjJQHXU (ORCPT ); Tue, 17 Oct 2023 03:23:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60786 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234469AbjJQHXS (ORCPT ); Tue, 17 Oct 2023 03:23:18 -0400 Received: from out0-209.mail.aliyun.com (out0-209.mail.aliyun.com [140.205.0.209]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A4E4E8E for ; Tue, 17 Oct 2023 00:23:15 -0700 (PDT) X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R271e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018047212;MF=houwenlong.hwl@antgroup.com;NM=1;PH=DS;RN=13;SR=0;TI=SMTPD_---.V10sGCn_1697527391; Received: from localhost(mailfrom:houwenlong.hwl@antgroup.com fp:SMTPD_---.V10sGCn_1697527391) by smtp.aliyun-inc.com; Tue, 17 Oct 2023 15:23:12 +0800 Date: Tue, 17 Oct 2023 15:23:11 +0800 From: "Hou Wenlong" To: Ingo Molnar Cc: , "Lai Jiangshan" , "Thomas Gleixner" , "Ingo Molnar" , "Borislav Petkov" , "Dave Hansen" , "=?UTF-8?B?bWFpbnRhaW5lcjpYODYgQVJDSElURUNUVVJFIDMyLUJJVCBBTkQgNjQtQklU?=" , "H. Peter Anvin" , "Josh Poimboeuf" , "Anshuman Khandual" , "Mike Rapoport" , "Pasha Tatashin" Subject: Re: [PATCH RFC 1/7] x86/head/64: Mark startup_gdt and startup_gdt_descr as __initdata Message-ID: <20231017072311.GA46993@k08j02272.eu95sqa> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Oct 16, 2023 at 07:57:06PM +0800, Ingo Molnar wrote: > > * Hou Wenlong wrote: > > > As startup_gdt and startup_gdt_descr are only used in booting, make them > > as __initdata to allow them to be freed after boot. > > > > Signed-off-by: Hou Wenlong > > --- > > arch/x86/kernel/head64.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c > > index 49f7629b17f7..dd357807ffb5 100644 > > --- a/arch/x86/kernel/head64.c > > +++ b/arch/x86/kernel/head64.c > > @@ -69,7 +69,7 @@ EXPORT_SYMBOL(vmemmap_base); > > /* > > * GDT used on the boot CPU before switching to virtual addresses. > > */ > > -static struct desc_struct startup_gdt[GDT_ENTRIES] = { > > +static struct desc_struct startup_gdt[GDT_ENTRIES] __initdata = { > > [GDT_ENTRY_KERNEL32_CS] = GDT_ENTRY_INIT(0xc09b, 0, 0xfffff), > > [GDT_ENTRY_KERNEL_CS] = GDT_ENTRY_INIT(0xa09b, 0, 0xfffff), > > [GDT_ENTRY_KERNEL_DS] = GDT_ENTRY_INIT(0xc093, 0, 0xfffff), > > @@ -79,7 +79,7 @@ static struct desc_struct startup_gdt[GDT_ENTRIES] = { > > * Address needs to be set at runtime because it references the startup_gdt > > * while the kernel still uses a direct mapping. > > */ > > -static struct desc_ptr startup_gdt_descr = { > > +static struct desc_ptr startup_gdt_descr __initdata = { > > .size = sizeof(startup_gdt), > > .address = 0, > > Yeah, so I think this and patch #1 are independently useful of the PIE > feature, and I merged them into tip:x86/boot for a v6.7 merge. > > Mind re-sending any other patches for x86 that can be merged? For example > patch #6 looks good too, but was mixed up a bit with a previous > PIE-enablement patch. Moving the __head definition to a header should also > probably done as a separate patch, followed by the widening of its use. > Hi Ingo, I have sent patch #6 separately for x86. Do you have any ideas about building the head code as PIE? Should I resend the patchset for the PIE feature? Thanks! > Thanks, > > Ingo