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 B4762C77B75 for ; Mon, 22 May 2023 11:08:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 18645900004; Mon, 22 May 2023 07:08:46 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 136BA900002; Mon, 22 May 2023 07:08:46 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0302E900004; Mon, 22 May 2023 07:08:45 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id E44B1900002 for ; Mon, 22 May 2023 07:08:45 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 6F330ADB1D for ; Mon, 22 May 2023 11:08:45 +0000 (UTC) X-FDA: 80817618210.02.6BDE9B7 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf15.hostedemail.com (Postfix) with ESMTP id 9ABDAA0016 for ; Mon, 22 May 2023 11:08:43 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=GJD6jDN8; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf15.hostedemail.com: domain of ardb@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=ardb@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684753723; 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=ZdnfAW+Fb4PpsvvGmSAR3zR4aDUZ8MefMCa0ZRFQa78=; b=YsD2QFdHkqmYLab0aWLn2zDCwRg55Zi4f5U4/Jcep0q9F2pjvDovdQ6OzKwxThJCKQqI9Z yVPliejy8SmPaICSwQok7bUk5aWHfNkScMCIQ/XThZJoXyRD4z0bKaTY8er4Wmz9kl/af3 uI0W2XVM7b7mdkLWHXrRJ20fUEz0uU0= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=GJD6jDN8; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf15.hostedemail.com: domain of ardb@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=ardb@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684753723; a=rsa-sha256; cv=none; b=UXbXKfPWJ7uSTRvmi1RqS0Q6RTe3dxgIjLk1Zqtgoc1qWMPa8T7vsGzaJeJsy7Fu7u6MpE R49LKwbVpKiGvdEPC49r0rwefsfKc6azsWHD+IY9POGE0nDaBL1fICLqL4ruVQ3OPEb7L3 1gTsX2ZmmJ+J6aXw9wV8WA1VMY2AcQ4= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id A659D6208F for ; Mon, 22 May 2023 11:08:42 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A2C02C433A0 for ; Mon, 22 May 2023 11:08:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1684753721; bh=dZzOa+0jKFOy2FXi+DrUaKGjHvbyRLYaSwG19Q0u4E0=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=GJD6jDN8N1fH8Sk1+KZCuXl3R0FNqMWXA5rHFwAwOa3B/Q9xfgsF1UeqY4zMbF87f A7dQB5Sj/pzo/ViW4bdXtBoHFIk28+YJIIf78BJ6rYoRR81UkTP/Y21elu87Z8AKSV Nd0jXFnBNo9Kvu+TpAN3l4C+15+ONqQkRT3KjB1BodGx/qmg7lXZmd6wEi3x4XmVw5 lpvGOOcYZC1Xr9Gg7d7OLx2ndfwzfOD8lGMzjE7qyBUOh2RiO2zycUcGt3tJFOdxlT e/PrvebA7SBHmiRm7PxdHUC52vP2hka4ThQKuwKDdZ1Fc4wCM27eolycrdAUv8kRz1 +ZQsvz7c31Atg== Received: by mail-lj1-f180.google.com with SMTP id 38308e7fff4ca-2af2602848aso37242481fa.2 for ; Mon, 22 May 2023 04:08:41 -0700 (PDT) X-Gm-Message-State: AC+VfDybQp2CsTh9NY2P/DAx0snuAjphei3xSWnFtTVs4hslNioVIxVu O+g+YaDT8w1kBy49LwlA6fnOhMx9vcUy/yr9TYA= X-Google-Smtp-Source: ACHHUZ7D/8RmGeXbWZYE5PXfgu2Db2fE1tbZ/Ty+qOnQj3Ao3ximTAhEb612qg9Af/a0JF3TKL3wl1dNXZZ8F20Vq10= X-Received: by 2002:ac2:47ee:0:b0:4f3:ab4b:9015 with SMTP id b14-20020ac247ee000000b004f3ab4b9015mr3442452lfp.18.1684753719455; Mon, 22 May 2023 04:08:39 -0700 (PDT) MIME-Version: 1.0 References: <20230518231434.26080-1-kirill.shutemov@linux.intel.com> <20230518231434.26080-5-kirill.shutemov@linux.intel.com> <20230519101641.nka7ty3fttntymci@box.shutemov.name> <20230522110116.675nqxrztxbtmdl7@box.shutemov.name> In-Reply-To: <20230522110116.675nqxrztxbtmdl7@box.shutemov.name> From: Ard Biesheuvel Date: Mon, 22 May 2023 13:08:28 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCHv12 4/9] x86/boot/compressed: Handle unaccepted memory To: "Kirill A. Shutemov" Cc: "Kirill A. Shutemov" , Borislav Petkov , Andy Lutomirski , Dave Hansen , Sean Christopherson , Andrew Morton , Joerg Roedel , 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 Content-Type: text/plain; charset="UTF-8" X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 9ABDAA0016 X-Stat-Signature: ep8kpms7wjfrcj7r7o4yewqegxoay5et X-Rspam-User: X-HE-Tag: 1684753723-736817 X-HE-Meta: U2FsdGVkX1/33oeKyh9hsoK/v8EULfIQ527OQCJudjEE4iHnijRUffEMekqW65XJtBMCYvJYQI8DEA43t6kF5dxxQbFBXp+1CzWBAoEzrO0roMNa4HRjXBxK22+Hs1QhEziNmnHjDAdovcSOX22ZnG6yS78neaqlhgDISWWRK+UHHTgpqty6e+BddbS4/kmqxcuqJW7z2+V1d7ZkbgK2SgiiUdZON2WPInsESvRqyP2iL0GJgiOfeiYtoD5/AYXYK/pUplLB2nwAEqhR/aCyDi3m64eJItEGe/OtbuU+N4kdjPfu2caVsBdnwYZz0iKU1q8Tqoh2NeNK5UeSBHzSIOSan5rrT++Pvb8H7kOWexIhJ1Zn8IOfIGvkSl7G/k211k1YPpc2RCFejQMOQfB4vqTJAExRdVSY68tMhRSXb3aVi3Sw1Nfa4NcnqYeJ/c2YiYaV/HER72djQSH9Q0rFiNXCQc1Qpl2fEZCpWjCVdBSKeIBO1IJvH8Jr8AetnDxMtbQbXzybYNR1zGZECxNFnSRclPDOpz8Q0TBzGZff+MCyt3PsZ8sGJBqNTMX1Sxt3GS9a7GlrosUoZbEouJvys1ahWEIVGbq/deHb6OplE0OwAfSNBTsDwNA3oqCSp6dWq1sMQrNVNP4USUib1UXWDlqEMHRw/tFGTjI3vh5SZ4QZgbtw4H84BZEsJSwWbaHXSCd4eakewCJ6L6YfusIrgSXHGdWLcCC0sI/N6IGD1UigD6CuMKUdpTk7jlo9TRd5KnT6rDDfPJPH+4y0whVhxnqyuirIPfeyzuHpah4WYOgxapDkFyvaD64jmQnPogk12Z4czUAYjBddQhxwODJ5FMrmV9QpzK+eHP0f0bpNxujH4pWlbHVEPwia14RF/7a8x2XF/SSt9ooSocXVmkTwkgpNup9KZf2wCzTyISe8gH+3+gG6JGWN/nSSyD3Zw4Qk+vgXkpAeSe3crwmr2Vp CodUkINz Gxjs4gC7mcmwtK9G8xU4zLjEMiR2ahvALJqLtmy0IenZj6za7eQ1CHUKypWowFw0Lm0LQyRvOhiwIcG9rbpF+SpaK/hcNTK/vxHWOddq0wyFPs8yXS01+d4Ur6+0hobdvK+kQ50ughvL8A7Gx9OvmCkD6PGcTDKhoPh4PTTJfAh4RtG9CKLh2Y1w/r/TrWUVEvJHYbUXg5fcRDSYdCl61Ny9r2g2FEfwFrU+Z+XTXwoDRPrlxmGx6H+fRjKn1h+bgwwW43asH2frsScIiMt5jiYrq8QUzqsHLSyXxzHCD2TmRgONhaUc0XIAhN/2konnfMluCmhPUVPgPUl/P4N8YKk+uvNzCu1M5OCkzSmcrnJzt0W50C1sUm6oHPg== 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 Mon, 22 May 2023 at 13:01, Kirill A. Shutemov wrote: > > 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"); > With these changes applied, Reviewed-by: Ard Biesheuvel