Implement multi-processor freeze and thaw execution for SMP crash state synchronization
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after 22s
Builds / ExectOS (i686, release) (push) Failing after 24s
Builds / ExectOS (amd64, release) (push) Failing after 40s
Builds / ExectOS (i686, debug) (push) Failing after 38s

This commit is contained in:
2026-06-08 14:38:17 +02:00
parent c8cd198c4e
commit b285bc7312
3 changed files with 319 additions and 0 deletions

View File

@@ -18,9 +18,15 @@ namespace KE
class Crash
{
private:
STATIC PKPROCESSOR_CONTROL_BLOCK FreezeOwner;
STATIC BOOLEAN KernelPanic;
STATIC KRUNLEVEL RunLevel;
public:
STATIC XTAPI VOID FreezeCurrentExecution(IN PKTRAP_FRAME TrapFrame,
IN PKEXCEPTION_FRAME ExceptionFrame);
STATIC XTAPI BOOLEAN FreezeExecution(IN PKTRAP_FRAME TrapFrame,
IN PKEXCEPTION_FRAME ExceptionFrame);
STATIC XTAPI VOID HaltSystem(VOID);
STATIC XTAPI VOID Panic(IN ULONG Code);
STATIC XTAPI VOID Panic(IN ULONG Code,
@@ -29,6 +35,7 @@ namespace KE
IN ULONG_PTR Parameter3,
IN ULONG_PTR Parameter4);
STATIC XTAPI BOOLEAN SystemCrashed(VOID);
STATIC XTAPI VOID ThawExecution(IN BOOLEAN Interrupts);
};
}