MCPcopy Create free account
hub / github.com/HoShiMin/Kernel-Bridge / InitHandlersTable

Function InitHandlersTable

Kernel-Bridge/API/Hypervisor.cpp:2478–2507  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2476 }
2477
2478 void InitHandlersTable()
2479 {
2480 for (auto i = 0u; i < ARRAYSIZE(HandlersTable); ++i)
2481 {
2482 HandlersTable[i] = EmptyHandler;
2483 }
2484
2485 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_CPUID , CpuidHandler);
2486 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_XSETBV , XsetbvHandler);
2487 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_EPT_VIOLATION, EptViolationHandler);
2488 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_EPT_MISCONFIGURATION, EptMisconfigurationHandler);
2489 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_MONITOR_TRAP_FLAG, MonitorTrapFlagHandler);
2490 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_EXCEPTION_OR_NMI, ExceptionOrNmiHandler);
2491 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_VMCALL , VmcallHandler);
2492 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_RDMSR , RdmsrHandler);
2493 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_WRMSR , WrmsrHandler);
2494
2495 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_VMCLEAR , VmxRelatedHandler);
2496 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_VMLAUNCH, VmxRelatedHandler);
2497 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_VMPTRLD , VmxRelatedHandler);
2498 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_VMPTRST , VmxRelatedHandler);
2499 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_VMREAD , VmxRelatedHandler);
2500 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_VMWRITE , VmxRelatedHandler);
2501 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_VMXOFF , VmxRelatedHandler);
2502 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_VMXON , VmxRelatedHandler);
2503 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_INVVPID , VmxRelatedHandler);
2504 InsertHandler(VMX::VMX_EXIT_REASON::EXIT_REASON_INVEPT , VmxRelatedHandler);
2505
2506 _mm_sfence();
2507 }
2508 }
2509
2510 _IRQL_requires_same_

Callers 1

VirtualizeAllProcessorsFunction · 0.85

Calls 1

InsertHandlerFunction · 0.85

Tested by

no test coverage detected