public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Min Xu" <min.m.xu@intel.com>
To: devel@edk2.groups.io
Cc: Min Xu <min.m.xu@intel.com>, Eric Dong <eric.dong@intel.com>,
	Ray Ni <ray.ni@intel.com>, Brijesh Singh <brijesh.singh@amd.com>,
	Erdem Aktas <erdemaktas@google.com>,
	James Bottomley <jejb@linux.ibm.com>,
	Jiewen Yao <jiewen.yao@intel.com>,
	Tom Lendacky <thomas.lendacky@amd.com>,
	Gerd Hoffmann <kraxel@redhat.com>
Subject: [PATCH V2 0/6] Support 2 CpuMpPei/CpuDxe in One image
Date: Sat,  7 May 2022 09:36:17 +0800	[thread overview]
Message-ID: <cover.1651885849.git.min.m.xu@intel.com> (raw)

BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3918

Above BZ reports an issue that commit 88da06ca triggers ASSERT in some
scenario. This patch-set is to fix this issue.

As commit 88da06ca describes TDVF BSP and APs are simplied and it can
simply use MpInitLibUp instead of MpInitLib. To achieve this goal, we
include 2 CpuMpPei/CpuDxe drivers in OvmfPkgX64 and IntelTdxX64. This
is done by setting different FILE_GUID to these drivers (of the same
name). In the other hand, we import a set of MpInitLibDepLib. These
libs simply depend on the PPI/Protocols. While these PPI/Protocols are
installed according to the guest type.

This patch-set is a replacement of
https://edk2.groups.io/g/devel/message/89381. Please see the dicussion in
 - https://edk2.groups.io/g/devel/message/89382
 - https://edk2.groups.io/g/devel/message/89455
 - https://edk2.groups.io/g/devel/message/89522
 - https://edk2.groups.io/g/devel/message/89535

The code is at: https://github.com/mxu9/edk2/tree/Rework-MpInitLib.v2

v2 changes:
 - Remove the un-used FILE_GUID definitions.
 - Delete un-used EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST in DispatchTable.
 - Add more comments.

Cc: Eric Dong <eric.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Brijesh Singh <brijesh.singh@amd.com>
Cc: Erdem Aktas <erdemaktas@google.com>
Cc: James Bottomley <jejb@linux.ibm.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Min Xu <min.m.xu@intel.com>

Min M Xu (4):
  UefiCpuPkg: Revert "UefiCpuPkg: Enable Tdx support in MpInitLib"
  OvmfPkg/Sec: Install MpInitLibDepLib PPIs in SecMain.c
  OvmfPkg/TdxDxe: Install MpInitLibDepLib protocols
  OvmfPkg: Enable 2 different CpuMpPei and CpuDxe drivers

Min Xu (2):
  OvmfPkg: Add MpInitLibDepLib related PPI/Protocol definitions
  OvmfPkg: Add MpInitLibDepLib

 OvmfPkg/Include/Ppi/MpInitLibDep.h            |  28 +++++
 .../Include/Protocol/MpInitLibDepProtocols.h  |  28 +++++
 OvmfPkg/IntelTdx/IntelTdxX64.dsc              |  30 ++++-
 OvmfPkg/IntelTdx/IntelTdxX64.fdf              |   3 +
 .../MpInitLibDepLib/DxeMpInitLibMpDepLib.inf  |  27 +++++
 .../MpInitLibDepLib/DxeMpInitLibUpDepLib.inf  |  27 +++++
 .../Library/MpInitLibDepLib/MpInitLibDepLib.c |  23 ++++
 .../MpInitLibDepLib/PeiMpInitLibMpDepLib.inf  |  27 +++++
 .../MpInitLibDepLib/PeiMpInitLibUpDepLib.inf  |  27 +++++
 OvmfPkg/OvmfPkg.dec                           |   5 +
 OvmfPkg/OvmfPkgX64.dsc                        |  55 ++++++++-
 OvmfPkg/OvmfPkgX64.fdf                        |   4 +
 OvmfPkg/Sec/SecMain.c                         |  34 +++++-
 OvmfPkg/Sec/SecMain.inf                       |   2 +
 OvmfPkg/TdxDxe/TdxDxe.c                       |  22 +++-
 OvmfPkg/TdxDxe/TdxDxe.inf                     |   2 +
 UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf |   3 -
 UefiCpuPkg/Library/MpInitLib/MpIntelTdx.h     |  69 ------------
 UefiCpuPkg/Library/MpInitLib/MpLib.c          |  63 +----------
 UefiCpuPkg/Library/MpInitLib/MpLibTdx.c       | 106 ------------------
 UefiCpuPkg/Library/MpInitLib/MpLibTdxNull.c   |  69 ------------
 UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf |   3 -
 22 files changed, 343 insertions(+), 314 deletions(-)
 create mode 100644 OvmfPkg/Include/Ppi/MpInitLibDep.h
 create mode 100644 OvmfPkg/Include/Protocol/MpInitLibDepProtocols.h
 create mode 100644 OvmfPkg/Library/MpInitLibDepLib/DxeMpInitLibMpDepLib.inf
 create mode 100644 OvmfPkg/Library/MpInitLibDepLib/DxeMpInitLibUpDepLib.inf
 create mode 100644 OvmfPkg/Library/MpInitLibDepLib/MpInitLibDepLib.c
 create mode 100644 OvmfPkg/Library/MpInitLibDepLib/PeiMpInitLibMpDepLib.inf
 create mode 100644 OvmfPkg/Library/MpInitLibDepLib/PeiMpInitLibUpDepLib.inf
 delete mode 100644 UefiCpuPkg/Library/MpInitLib/MpIntelTdx.h
 delete mode 100644 UefiCpuPkg/Library/MpInitLib/MpLibTdx.c
 delete mode 100644 UefiCpuPkg/Library/MpInitLib/MpLibTdxNull.c

-- 
2.29.2.windows.2


             reply	other threads:[~2022-05-07  1:36 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-07  1:36 Min Xu [this message]
2022-05-07  1:36 ` [PATCH V2 1/6] UefiCpuPkg: Revert "UefiCpuPkg: Enable Tdx support in MpInitLib" Min Xu
2022-05-07  5:30   ` Ni, Ray
2022-05-07  1:36 ` [PATCH V2 2/6] OvmfPkg: Add MpInitLibDepLib related PPI/Protocol definitions Min Xu
2022-05-07  1:36 ` [PATCH V2 3/6] OvmfPkg: Add MpInitLibDepLib Min Xu
2022-05-07  1:36 ` [PATCH V2 4/6] OvmfPkg/Sec: Install MpInitLibDepLib PPIs in SecMain.c Min Xu
2022-05-07  1:36 ` [PATCH V2 5/6] OvmfPkg/TdxDxe: Install MpInitLibDepLib protocols Min Xu
2022-05-07  1:36 ` [PATCH V2 6/6] OvmfPkg: Enable 2 different CpuMpPei and CpuDxe drivers Min Xu
2022-05-07  5:30 ` [PATCH V2 0/6] Support 2 CpuMpPei/CpuDxe in One image Ni, Ray
2022-05-09 12:44 ` Min Xu
2022-05-09 17:29   ` Lendacky, Thomas
2022-05-09 23:37     ` Min Xu
2022-05-10 13:22       ` Lendacky, Thomas
2022-05-10 15:16       ` Lendacky, Thomas
2022-05-10  9:26   ` Gerd Hoffmann
2022-05-11  0:13     ` Min Xu
2022-05-11  8:47   ` Yao, Jiewen
2022-05-11  8:47   ` Yao, Jiewen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1651885849.git.min.m.xu@intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox