SecurityPkg/TdTcg2Dxe: td-guest shall halt when CcMeasurement install fail

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

CcMeasurement protocol is installed when it is supported in a td-guest. If
the installation of the protocol failed, the guest shall go into
CpuDeadLoop. Because the measurement feature is crucial to a td-guest and
it shall stop running immediately at this situation.

Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Jian J Wang <jian.j.wang@intel.com>
Signed-off-by: Min Xu <min.m.xu@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
This commit is contained in:
Min M Xu 2023-02-02 17:04:14 +08:00 committed by mergify[bot]
parent cc18c503e0
commit ff8485179c
1 changed files with 6 additions and 0 deletions

View File

@ -2510,6 +2510,12 @@ DriverEntry (
//
// Create event callback to install CC EventLog ACPI Table
EfiCreateProtocolNotifyEvent (&gEfiAcpiTableProtocolGuid, TPL_CALLBACK, InstallAcpiTable, NULL, &Registration);
} else {
//
// Cc measurement feature is crucial to a td-guest and it shall stop running immediately
// when it is failed to be installed.
DEBUG ((DEBUG_ERROR, "%a: CcMeasurement protocol failed to be installed - %r\n", __FUNCTION__, Status));
CpuDeadLoop ();
}
return Status;