diff --git a/Changelog.md b/Changelog.md index 7f5aa202..9c0b9198 100644 --- a/Changelog.md +++ b/Changelog.md @@ -17,6 +17,7 @@ OpenCore Changelog - Updated build process to provide stable and bleeding-edge versions of `EnableGop` - Implemented minor improvements in `PickerMode` `Apple` - Improved filtering algorithm for `LogModules` option +- Fixed crash when gathering system report on virtualised CPUs #### v0.9.1 - Fixed long comment printing for ACPI patches, thx @corpnewt diff --git a/Library/OcCpuLib/OcCpuLib.c b/Library/OcCpuLib/OcCpuLib.c index ddb62f25..a007433e 100644 --- a/Library/OcCpuLib/OcCpuLib.c +++ b/Library/OcCpuLib/OcCpuLib.c @@ -999,6 +999,14 @@ OcCpuGetMsrReport ( return; } + // + // Hypervisors virtualise MSRs so the values are either not present + // and cause a crash or are irrelevant as they report placeholders. + // + if (CpuInfo->Hypervisor) { + return; + } + if (CpuInfo->CpuGeneration >= OcCpuGenerationNehalem) { // // MSR_PLATFORM_INFO