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 A289BC7EE26 for ; Mon, 22 May 2023 11:01:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F1D2F900003; Mon, 22 May 2023 07:01:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ECD02900002; Mon, 22 May 2023 07:01:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D6E6F900003; Mon, 22 May 2023 07:01:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id C72C8900002 for ; Mon, 22 May 2023 07:01:36 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 66D32401AE for ; Mon, 22 May 2023 11:01:36 +0000 (UTC) X-FDA: 80817600192.23.C1CDA0C Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by imf15.hostedemail.com (Postfix) with ESMTP id D64DCA0057 for ; Mon, 22 May 2023 11:01:23 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=shutemov.name header.s=fm2 header.b="E JVHEIb"; dkim=pass header.d=messagingengine.com header.s=fm1 header.b=EubsQEL6; spf=pass (imf15.hostedemail.com: domain of kirill@shutemov.name designates 66.111.4.29 as permitted sender) smtp.mailfrom=kirill@shutemov.name; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684753284; 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=Ot/PaadLQmFY3PRWcupRZot4l1Jk74XWyrXMKDJAiLc=; b=KUOok9iBYBq8Ohdslvzp+Nj2/J8jz6hgFBaBAdAhegxWJ6mp2+BtBuuIy6sj5U/NcayLGd M3FdYyuSp4IkpZ2gCkfIIiAcrSFd4tzz6UrbVB06UQailanS1Mv+WMryOBeNBbAklNmRG2 5WCaMNfLA/v6FhkIU0BxYch/JTqjKeI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684753284; a=rsa-sha256; cv=none; b=f9IYiWNnfJNrR1TYinoDTjDCIgnpkmLxx3++Fqj+btOixC0OdWAPlxLqFeJqWCjQPAwWoT rqKfpbEGhBufkVX0Sl0Ky0WkQ1YOK1HwCV5mqxzxr2NcMLqsifYsH/iirSnQZ1ygFd2RMd i2ljJPFu+st1CnJSs9N1Tv1MHowLheY= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=shutemov.name header.s=fm2 header.b="E JVHEIb"; dkim=pass header.d=messagingengine.com header.s=fm1 header.b=EubsQEL6; spf=pass (imf15.hostedemail.com: domain of kirill@shutemov.name designates 66.111.4.29 as permitted sender) smtp.mailfrom=kirill@shutemov.name; dmarc=none Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id 8F10B5C013A; Mon, 22 May 2023 07:01:22 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Mon, 22 May 2023 07:01:22 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=shutemov.name; h=cc:cc:content-type:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm2; t=1684753282; x= 1684839682; bh=Ot/PaadLQmFY3PRWcupRZot4l1Jk74XWyrXMKDJAiLc=; b=E JVHEIbN4tyUpkbE2KYtZ0Gwo6mGCxBTHoeBI+ulaPBcMt3jpE2WZXu+lxu/sAw5v bzfNMLkNJhihM6Du1Luqx/VuLPPgXyX0GWvemtBUs97nhjicUIbfG0SH++nQBdbQ J255NuS1lc0/V5x3nzMLdAAcogaDhjJNy7MupOktEIb8fBXzdWZ82FMrLrJpPdI3 ifa/wFRrpPPn6sDvbOjHJsKBBmgXeYrz29TBAjxkowqJoB5u+fV0bnEX51NUeqhh H7a4YPUCS/g6wuSy2dbxnABEgiDfoJTiaMiokRPvDDLXzbtWR/hnAZgcDAuZBYhH XAzppUJWIW5iXY3xsMhFA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1684753282; x=1684839682; bh=Ot/PaadLQmFY3 PRWcupRZot4l1Jk74XWyrXMKDJAiLc=; b=EubsQEL6iFNqM6WWcXvLutuhU+Py5 f52bufa3ZfautO7wbJoO8SVL/eD1Iy/MEUp+RJzzn2EGHo8CBaPtGASyJW9iLZ8E KjtpwPNQCIuGAvUorF5zXHHbgmFkoJc5U1yK0XHE4VbURlSIgEe1C+t4Yx13NSiS 1aukA3DgoKsvqTAgiguzZZrHYKxTpNjAq5JvdGilNOQWTXCvgzSEITmkjDcE2J20 JT+eTgyxnQiBg7EuJFy9pLXnoGAkkNjYJEin7TQFPLYP03qCF1b256KxoB6SwVPl j74n7u57spUQDCytnQ35Nf510jdCybBADtIo1FTgqy99TFXaHDWC4EfgA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeejuddgfedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesthdttddttddtvdenucfhrhhomhepfdfmihhr ihhllhcutedrucfuhhhuthgvmhhovhdfuceokhhirhhilhhlsehshhhuthgvmhhovhdrnh grmhgvqeenucggtffrrghtthgvrhhnpefhieeghfdtfeehtdeftdehgfehuddtvdeuheet tddtheejueekjeegueeivdektdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmh epmhgrihhlfhhrohhmpehkihhrihhllhesshhhuhhtvghmohhvrdhnrghmvg X-ME-Proxy: Feedback-ID: ie3994620:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 22 May 2023 07:01:19 -0400 (EDT) Received: by box.shutemov.name (Postfix, from userid 1000) id 9E671103828; Mon, 22 May 2023 14:01:16 +0300 (+03) Date: Mon, 22 May 2023 14:01:16 +0300 From: "Kirill A. Shutemov" To: "Kirill A. Shutemov" Cc: Borislav Petkov , Andy Lutomirski , Dave Hansen , Sean Christopherson , Andrew Morton , Joerg Roedel , Ard Biesheuvel , Andi Kleen , Kuppuswamy Sathyanarayanan , David Rientjes , Vlastimil Babka , Tom Lendacky , Thomas Gleixner , Peter Zijlstra , Paolo Bonzini , Ingo Molnar , Dario Faggioli , Mike Rapoport , David Hildenbrand , Mel Gorman , marcelo.cerri@canonical.com, tim.gardner@canonical.com, khalid.elmously@canonical.com, philip.cox@canonical.com, aarcange@redhat.com, peterx@redhat.com, x86@kernel.org, linux-mm@kvack.org, linux-coco@lists.linux.dev, linux-efi@vger.kernel.org, linux-kernel@vger.kernel.org, Liam Merwick Subject: Re: [PATCHv12 4/9] x86/boot/compressed: Handle unaccepted memory Message-ID: <20230522110116.675nqxrztxbtmdl7@box.shutemov.name> References: <20230518231434.26080-1-kirill.shutemov@linux.intel.com> <20230518231434.26080-5-kirill.shutemov@linux.intel.com> <20230519101641.nka7ty3fttntymci@box.shutemov.name> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230519101641.nka7ty3fttntymci@box.shutemov.name> X-Rspamd-Queue-Id: D64DCA0057 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: odnckxx81qd66yct1qn7mhdywbfyim6e X-HE-Tag: 1684753283-339020 X-HE-Meta: U2FsdGVkX1+bDt/0zSPK34J/2aVQ1a0Z+ZouzuiIlpCtFznmTy9dC0gZxrYLZcetXhEIIfW4XwdJKFQhVPdYmMEXsN8NET/KJmcYS1ar1pwMavddS55r17ICqMZtA+oucAOugtkbvsBYqB42HLsno4NFAl1LdNw6S9tmK2+xIVk/w3Ae8hj1zyBhE2fcZNMHhqUS0Gy8SMqQNYne87ttqDJlDLaV2NizQ/Hr5oldPdvkgoQvkVqo5c3PngwKSLnE1PN4R5MualywV+8rVJFNBwu9QJJDfN8BOINRZ8xr1ZeNN1I0z3wibu3rUBf8Mag9wo6qrYt8fM5+h8uyDPugNiYi+HM2v7cVh01jGzrR9qxR+9NBirm+zrKDiddggg33Gw+HT3Gb8U/4ikMRX2HtG8GGeGfDW1UX9Ire98dC6wYgrXumyi79s8Xm534nEqGNgRgX0kGQbO+Wt8rNZuHLgXkQQTGvwbpwso32hmK55LPS5wcpDp9MSS5fiR0pw/gi1Vqz+wHrqHxbWeyX8wYqpJ/MKKfcco8Ydvpd7WtuygomF11ihawLQYtbkZwNK39Pa5k81+PXLgw6PFZtgu20Q2ZVDZO8911ogOdjJPKHgiHGdWVFBxdMexyzZ30lpdt0dKilOrOt1UoNCQC5ZGFb0zBMQs+MjSP/zCiGGX01GccrpX765JSqAfjXr7nnQiegO5JAcBnghaHz4zkFzISI7N3cSpGaVbqLahpxeB0z7BHOs4+nFRMZhRgZ5e+B7/EbFqiPza3WRPbVvzeDwmfmblACpvAMtwQk/yuJwh4UVcVgv4ZsjXVjvCCyg+QyeLUU7c/CAg4IZVOgFDPOG6QV7MJxXgQAFLBOnDLNWZTrd/X82j8W+W0Iou59O8VCeS4BdIsEByL0FVcWHFXl16b/yOM2qY8iAL3j+x2gTOX3wlo77ks1OV8wMQcIxa1U28OUbya9x26i1C4rZRIMDD0 O1iOVqkW w0ec+DLbMvucx7YszeYTAluH0sb1n6HMYBNJaGzaDc1AzFeWdG/L6pIwJT01xPF3pgeJRwo1BXn6tTohphpQhacqefPIcI15ZZwQvQQ95dsPkvyhUutwRGQ37SW10eQ1u8cU8c/jp0E3OvRJo9q4j3sfSx2mOyO0xYUxO4a3rEpA0TO2/ClbX+pD25W9Y3qxpLDcef+hzwBCZG3fahkP1DHDgvTi3bipXvyAV8u9xlJIEapnyDyGnjlKghpFSrKVANJbBBaXr6eYQOkGlNDuhQwUidl92gEpOzRIk4RnsOz+tv6U= 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: On Fri, May 19, 2023 at 01:16:41PM +0300, Kirill A. Shutemov wrote: > On Fri, May 19, 2023 at 02:14:29AM +0300, Kirill A. Shutemov wrote: > > diff --git a/arch/x86/boot/compressed/mem.c b/arch/x86/boot/compressed/mem.c > > index 67594fcb11d9..87372b96d613 100644 > > --- a/arch/x86/boot/compressed/mem.c > > +++ b/arch/x86/boot/compressed/mem.c > > @@ -1,9 +1,32 @@ > > // SPDX-License-Identifier: GPL-2.0-only > > > > #include "error.h" > > +#include "misc.h" > > > > void arch_accept_memory(phys_addr_t start, phys_addr_t end) > > { > > /* Platform-specific memory-acceptance call goes here */ > > error("Cannot accept memory"); > > } > > + > > +void init_unaccepted_memory(void) > > +{ > > + guid_t guid = LINUX_EFI_UNACCEPTED_MEM_TABLE_GUID; > > + struct efi_unaccepted_memory *unaccepted_table; > > + unsigned long cfg_table_pa; > > + unsigned int cfg_table_len; > > + int ret; > > + > > + ret = efi_get_conf_table(boot_params, &cfg_table_pa, &cfg_table_len); > > + if (ret) > > + error("EFI config table not found."); > > + > > + unaccepted_table = (void *)efi_find_vendor_table(boot_params, > > + cfg_table_pa, > > + cfg_table_len, > > + guid); > > + if (unaccepted_table->version != 1) > > + error("Unknown version of unaccepted memory table\n"); > > + > > + set_unaccepted_table(unaccepted_table); > > +} > > 0-day reported boot failure outdise TDX guest with CONFIG_INTEL_TDX_GUEST=y. 0-day folks reported one more issue: booting on non-EFI system fail. Updated fixup: diff --git a/arch/x86/boot/compressed/mem.c b/arch/x86/boot/compressed/mem.c index 0108c97399a5..e7f7ef31e581 100644 --- a/arch/x86/boot/compressed/mem.c +++ b/arch/x86/boot/compressed/mem.c @@ -46,8 +46,13 @@ void init_unaccepted_memory(void) struct efi_unaccepted_memory *unaccepted_table; unsigned long cfg_table_pa; unsigned int cfg_table_len; + enum efi_type et; int ret; + et = efi_get_type(boot_params); + if (et == EFI_TYPE_NONE) + return; + ret = efi_get_conf_table(boot_params, &cfg_table_pa, &cfg_table_len); if (ret) error("EFI config table not found."); @@ -56,6 +61,9 @@ void init_unaccepted_memory(void) cfg_table_pa, cfg_table_len, guid); + if (!unaccepted_table) + return; + if (unaccepted_table->version != 1) error("Unknown version of unaccepted memory table\n"); -- Kiryl Shutsemau / Kirill A. Shutemov