diff options
| author | amlal <amlal@el-mahrouss-logic.com> | 2024-03-13 23:14:42 +0100 |
|---|---|---|
| committer | amlal <amlal@el-mahrouss-logic.com> | 2024-03-13 23:14:42 +0100 |
| commit | 448f60533fbdb814a8b6fee1baa825a8a9dc041a (patch) | |
| tree | 30132a3aeff8a98edc0e9e925ab503bf5079e8dc /Private/Source | |
| parent | 4c6afd78863f7c5858931843d9a17723cf8f3ddd (diff) | |
Kernel: See below.
- Fix interrupts, it's only assembly code now, remove
HalInterruptHandlerAMD64.cxx.
- Improve documentation for FileManager.cxx
- Improve diagnostics for KernelCheck.
(Everything is ready for the AHCI driver!)
Signed-off-by: amlal <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Private/Source')
| -rw-r--r-- | Private/Source/FileManager.cxx | 6 | ||||
| -rw-r--r-- | Private/Source/KernelCheck.cxx | 21 |
2 files changed, 22 insertions, 5 deletions
diff --git a/Private/Source/FileManager.cxx b/Private/Source/FileManager.cxx index addd5e02..0e5499d6 100644 --- a/Private/Source/FileManager.cxx +++ b/Private/Source/FileManager.cxx @@ -18,8 +18,8 @@ static IFilesystemManager* kMounted = nullptr; /// @return The mounted filesystem. IFilesystemManager* IFilesystemManager::GetMounted() { return kMounted; } -/// @brief Unmount drive -/// @return the unmounted drive. +/// @brief Unmount filesystem. +/// @return the unmounted filesystem. IFilesystemManager* IFilesystemManager::Unmount() { if (kMounted) { auto mount = kMounted; @@ -31,7 +31,7 @@ IFilesystemManager* IFilesystemManager::Unmount() { return nullptr; } -/// @brief Mount filesystem +/// @brief Mount filesystem. /// @param pMount the filesystem to mount. /// @return if it succeeded true, otherwise false. bool IFilesystemManager::Mount(IFilesystemManager* pMount) { diff --git a/Private/Source/KernelCheck.cxx b/Private/Source/KernelCheck.cxx index ae8326a5..593190e1 100644 --- a/Private/Source/KernelCheck.cxx +++ b/Private/Source/KernelCheck.cxx @@ -27,35 +27,52 @@ void ke_stop(const HCore::Int &id) { switch (id) { case RUNTIME_CHECK_PROCESS: { kcout << "*** CAUSE: RUNTIME_CHECK_PROCESS *** \r\n"; + kcout << "*** WHAT: BAD DRIVER. *** \r\n"; break; } case RUNTIME_CHECK_ACPI: { kcout << "*** CAUSE: RUNTIME_CHECK_ACPI *** \r\n"; + kcout << "*** WHAT: ACPI DEFECT. *** \r\n"; break; } case RUNTIME_CHECK_POINTER: { kcout << "*** CAUSE: RUNTIME_CHECK_POINTER *** \r\n"; + kcout << "*** WHAT: BAD POINTER. *** \r\n"; break; } case RUNTIME_CHECK_BAD_BEHAVIOR: { kcout << "*** CAUSE: RUNTIME_CHECK_BAD_BEHAVIOR *** \r\n"; + kcout << "*** WHAT: KERNEL BECAME UNSTABLE. *** \r\n"; break; } case RUNTIME_CHECK_BOOTSTRAP: { kcout << "*** CAUSE: RUNTIME_CHECK_BOOTSTRAP *** \r\n"; + kcout << "*** WHAT: BAD BOOT. *** \r\n"; break; } case RUNTIME_CHECK_HANDSHAKE: { kcout << "*** CAUSE: RUNTIME_CHECK_HANDSHAKE *** \r\n"; + kcout << "*** WHAT: BAD HANDSHAKE. *** \r\n"; break; } - case RUNTIME_CHECK_LD: { - kcout << "*** CAUSE: RUNTIME_CHECK_LD *** \r\n"; + case RUNTIME_CHECK_IPC: { + kcout << "*** CAUSE: RUNTIME_CHECK_IPC *** \r\n"; + kcout << "*** WHAT: RICH CALL VIOLATION. *** \r\n"; break; } case RUNTIME_CHECK_INVALID_PRIVILEGE: { kcout << "*** CAUSE: RUNTIME_CHECK_INVALID_PRIVILEGE *** \r\n"; + kcout << "*** WHAT: RING-0 POLICY VIOLATION. *** \r\n"; break; + case RUNTIME_CHECK_UNEXCPECTED: { + kcout << "*** CAUSE: RUNTIME_CHECK_UNEXCPECTED *** \r\n"; + kcout << "*** WHAT: CATASROPHIC FAILURE! *** \r\n"; + break; + } + default: { + kcout << "*** CAUSE: RUNTIME_CHECK_GENERIC *** \r\n"; + break; + } } }; |
