The series patches are to refine SMM CPU Sync flow. After the refinement, SmmCpuSyncLib is abstracted for any user to provide different SMM CPU Sync implementation.
Compared to V2, has following refinement & changes: 1. rename SMM_CPU_SYNC_CXT to SMM_CPU_SYNC_CONTEXT 2. rename SemBlock to SemBuffer, SemBlockPages to SemBufferSize 3. remove empty lines among the local variable declarations 4. add assert before if condition check 5. update the comments for SmmCpuSyncCheckOutCpu, SmmCpuSyncGetArrivedCpuCount and SmmCpuSyncLockDoor. 6. remove unnecessary cxt local variable declarations. Jiaxin Wu (6): UefiCpuPkg/PiSmmCpuDxeSmm: Optimize Semaphore Sync between BSP and AP UefiCpuPkg: Adds SmmCpuSyncLib library class UefiCpuPkg: Implements SmmCpuSyncLib library instance OvmfPkg: Specifies SmmCpuSyncLib instance UefiPayloadPkg: Specifies SmmCpuSyncLib instance UefiCpuPkg/PiSmmCpuDxeSmm: Consume SmmCpuSyncLib OvmfPkg/CloudHv/CloudHvX64.dsc | 2 + OvmfPkg/OvmfPkgIa32.dsc | 2 + OvmfPkg/OvmfPkgIa32X64.dsc | 2 + OvmfPkg/OvmfPkgX64.dsc | 1 + UefiCpuPkg/Include/Library/SmmCpuSyncLib.h | 275 +++++++++ UefiCpuPkg/Library/SmmCpuSyncLib/SmmCpuSyncLib.c | 647 +++++++++++++++++++++ UefiCpuPkg/Library/SmmCpuSyncLib/SmmCpuSyncLib.inf | 39 ++ UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 275 ++++----- UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 6 +- UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 1 + UefiCpuPkg/UefiCpuPkg.dec | 3 + UefiCpuPkg/UefiCpuPkg.dsc | 3 + UefiPayloadPkg/UefiPayloadPkg.dsc | 1 + 13 files changed, 1086 insertions(+), 171 deletions(-) create mode 100644 UefiCpuPkg/Include/Library/SmmCpuSyncLib.h create mode 100644 UefiCpuPkg/Library/SmmCpuSyncLib/SmmCpuSyncLib.c create mode 100644 UefiCpuPkg/Library/SmmCpuSyncLib/SmmCpuSyncLib.inf -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#112108): https://edk2.groups.io/g/devel/message/112108 Mute This Topic: https://groups.io/mt/103010162/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-