35 #ifndef HYPERPLATFORM_COMMON_H_ 36 #define HYPERPLATFORM_COMMON_H_ 38 #include <fltKernel.h> 46 #pragma prefast(disable : 30030) 54 #if !defined(HYPERPLATFORM_COMMON_DBG_BREAK) 55 #define HYPERPLATFORM_COMMON_DBG_BREAK() \ 56 if (KD_DEBUGGER_NOT_PRESENT) { \ 60 reinterpret_cast<void*>(0) 68 #if !defined(HYPERPLATFORM_COMMON_BUG_CHECK) 69 #define HYPERPLATFORM_COMMON_BUG_CHECK(hp_bug_check_code, param1, param2, \ 71 HYPERPLATFORM_COMMON_DBG_BREAK(); \ 72 const HyperPlatformBugCheck code = (hp_bug_check_code); \ 73 __pragma(warning(push)) \ 74 __pragma(warning(disable: __WARNING_USE_OTHER_FUNCTION)) \ 75 KeBugCheckEx(MANUALLY_INITIATED_CRASH, static_cast<ULONG>(code), (param1), \ 77 __pragma(warning(pop)) 90 #define HYPERPLATFORM_PERFORMANCE_ENABLE_PERFCOUNTER 1 146 #endif // HYPERPLATFORM_COMMON_H_ A triple fault VM-exit occurred.
static const ULONG kHyperPlatformCommonPoolTag
A pool tag.
constexpr bool IsX64()
Checks if a system is x64.
EPT misconfiguration VM-exit occurred.
An unspecified bug occurred.
constexpr bool IsReleaseBuild()
Checks if the project is compiled as Release.
VMRESUME or VMXOFF has failed.
Critical pool allocation failed.
HyperPlatformBugCheck
BugCheck codes for HYPERPLATFORM_COMMON_BUG_CHECK().
All pre-allocated entries are used.
An unexpected VM-exit occurred.