diff --git a/EdkModulePkg/Core/DxeIplPeim/DxeLoad.c b/EdkModulePkg/Core/DxeIplPeim/DxeLoad.c index 5ec81b2534..8e1aeedac2 100644 --- a/EdkModulePkg/Core/DxeIplPeim/DxeLoad.c +++ b/EdkModulePkg/Core/DxeIplPeim/DxeLoad.c @@ -320,7 +320,10 @@ Returns: ASSERT_EFI_ERROR (Status); Status = PeiRecovery->LoadRecoveryCapsule (PeiServices, PeiRecovery); - ASSERT_EFI_ERROR (Status); + if (EFI_ERROR (Status)) { + DEBUG ((EFI_D_ERROR, "Load Recovery Capsule Failed.(Status = %r)\n", Status)); + CpuDeadLoop (); + } // // Now should have a HOB with the DXE core w/ the old HOB destroyed @@ -405,8 +408,10 @@ Returns: // // If we get here, then the DXE Core returned. This is an error + // Dxe Core should not return. // - ASSERT_EFI_ERROR (Status); + ASSERT (FALSE); + CpuDeadLoop (); return EFI_OUT_OF_RESOURCES; } diff --git a/EdkModulePkg/Core/DxeIplX64Peim/DxeLoadX64.c b/EdkModulePkg/Core/DxeIplX64Peim/DxeLoadX64.c index 023924c6c8..9a036e6246 100644 --- a/EdkModulePkg/Core/DxeIplX64Peim/DxeLoadX64.c +++ b/EdkModulePkg/Core/DxeIplX64Peim/DxeLoadX64.c @@ -282,7 +282,10 @@ Returns: ASSERT_EFI_ERROR (Status); Status = PeiRecovery->LoadRecoveryCapsule (PeiServices, PeiRecovery); - ASSERT_EFI_ERROR (Status); + if (EFI_ERROR (Status)) { + DEBUG ((EFI_D_ERROR, "Load Recovery Capsule Failed.(Status = %r)\n", Status)); + CpuDeadLoop (); + } } // @@ -362,8 +365,10 @@ Returns: // // If we get here, then the DXE Core returned. This is an error + // Dxe Core should not return. // - ASSERT_EFI_ERROR (Status); + ASSERT (FALSE); + CpuDeadLoop (); return EFI_OUT_OF_RESOURCES; }