From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 4C3F5740035 for ; Fri, 1 Mar 2024 07:44:14 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=uKlhPPF/a8xR+HU9Ra3sS8FzPnNlV4AGuEW+msSwJDw=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding:Content-Type; s=20140610; t=1709279053; v=1; b=psU588Qg2QNyK+6rw/2DZYY0kV7o/L+N6FxP69kYQOp+XuMCA+20DL/kLB5sNRMtlp4br11v ySVqu5w1DyLvYleVjfM1xAIzHqtWtGUMblxxXS/i473dgLpq7pZIsLYpB3NVPEwdIP8Q2ZlRL/d OycK2LbOH3mGOzT3n+ZmflnU= X-Received: by 127.0.0.2 with SMTP id NFLvYY7687511xS2G200KKeV; Thu, 29 Feb 2024 23:44:13 -0800 X-Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.groups.io with SMTP id smtpd.web10.17682.1709279052376972970 for ; Thu, 29 Feb 2024 23:44:12 -0800 X-Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-299-EM12CtANNo6AFWbf-2JLag-1; Fri, 01 Mar 2024 02:44:08 -0500 X-MC-Unique: EM12CtANNo6AFWbf-2JLag-1 X-Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id BC1371C04185; Fri, 1 Mar 2024 07:44:07 +0000 (UTC) X-Received: from sirius.home.kraxel.org (unknown [10.39.192.121]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 59F421121312; Fri, 1 Mar 2024 07:44:07 +0000 (UTC) X-Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id E8C7C1801493; Fri, 1 Mar 2024 08:44:02 +0100 (CET) From: "Gerd Hoffmann" To: devel@edk2.groups.io Cc: Jiewen Yao , Oliver Steffen , Laszlo Ersek , Michael Roth , Erdem Aktas , Gerd Hoffmann , Min Xu , Ard Biesheuvel , Tom Lendacky Subject: [edk2-devel] [PATCH v2 04/10] OvmfPkg/ResetVector: split TDX BSP workflow Date: Fri, 1 Mar 2024 08:43:56 +0100 Message-ID: <20240301074402.98625-5-kraxel@redhat.com> In-Reply-To: <20240301074402.98625-1-kraxel@redhat.com> References: <20240301074402.98625-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.3 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,kraxel@redhat.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: w917z73JKBjnjGVqhGJDMLbwx7686176AA= Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII"; x-default=true X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=psU588Qg; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=redhat.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io Create a separate control flow for TDX BSP. TdxPostBuildPageTables will now only be called when running in TDX mode, so the TDX check in that function is not needed any more. No functional change. Signed-off-by: Gerd Hoffmann Reviewed-by: Laszlo Ersek --- OvmfPkg/ResetVector/Ia32/IntelTdx.asm | 4 ---- OvmfPkg/ResetVector/Ia32/PageTables64.asm | 15 ++++++++++----- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/OvmfPkg/ResetVector/Ia32/IntelTdx.asm b/OvmfPkg/ResetVector/Ia32/IntelTdx.asm index 06794baef81d..c6b86019dfb9 100644 --- a/OvmfPkg/ResetVector/Ia32/IntelTdx.asm +++ b/OvmfPkg/ResetVector/Ia32/IntelTdx.asm @@ -197,11 +197,7 @@ NotTdx: ; Set byte[TDX_WORK_AREA_PGTBL_READY] to 1 ; TdxPostBuildPageTables: - cmp byte[WORK_AREA_GUEST_TYPE], VM_GUEST_TDX - jne ExitTdxPostBuildPageTables mov byte[TDX_WORK_AREA_PGTBL_READY], 1 - -ExitTdxPostBuildPageTables: OneTimeCallRet TdxPostBuildPageTables ; diff --git a/OvmfPkg/ResetVector/Ia32/PageTables64.asm b/OvmfPkg/ResetVector/Ia32/PageTables64.asm index 14cc2c33aa3d..166e80293c89 100644 --- a/OvmfPkg/ResetVector/Ia32/PageTables64.asm +++ b/OvmfPkg/ResetVector/Ia32/PageTables64.asm @@ -112,7 +112,7 @@ SetCr3ForPageTables64: ; is set. OneTimeCall CheckTdxFeaturesBeforeBuildPagetables cmp eax, TDX_BSP - je ClearOvmfPageTables + je TdxBspInit cmp eax, TDX_AP je SetCr3 @@ -124,16 +124,21 @@ SetCr3ForPageTables64: ; the page table build below. OneTimeCall GetSevCBitMaskAbove31 -ClearOvmfPageTables: ClearOvmfPageTables CreatePageTables4Level edx ; Clear the C-bit from the GHCB page if the SEV-ES is enabled. OneTimeCall SevClearPageEncMaskForGhcbPage + jmp SetCr3 - ; TDX will do some PostBuildPages task, such as setting - ; byte[TDX_WORK_AREA_PGTBL_READY]. - OneTimeCall TdxPostBuildPageTables +TdxBspInit: + ; + ; TDX BSP workflow + ; + ClearOvmfPageTables + CreatePageTables4Level 0 + OneTimeCall TdxPostBuildPageTables + jmp SetCr3 SetCr3: ; -- 2.44.0 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#116217): https://edk2.groups.io/g/devel/message/116217 Mute This Topic: https://groups.io/mt/104660111/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-