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

Method HandleExecute

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

Source from the content-addressed store, hash-verified

1358 }
1359
1360 bool HandleExecute(unsigned long long Pa)
1361 {
1362 unsigned long long Pa4Kb = ALIGN_DOWN_BY(Pa, PageSize);
1363 auto Handler = m_Handlers.find(Pa4Kb);
1364 if (Handler == m_Handlers.end())
1365 {
1366 return false;
1367 }
1368
1369 auto& Entry = Handler->second;
1370 auto PteEntry = Entry.Handlers.OnExecute;
1371 if (!PteEntry.Value)
1372 {
1373 return false;
1374 }
1375
1376 *Entry.Pte = PteEntry;
1377 invept();
1378
1379 return true;
1380 }
1381
1382 bool HandleExecuteRead(unsigned long long Pa, const void* NextInstruction)
1383 {

Callers 1

EptViolationHandlerFunction · 0.80

Calls 1

endMethod · 0.80

Tested by

no test coverage detected