diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-05-13 23:49:28 +0200 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2025-05-13 23:49:28 +0200 |
| commit | 38a534c90e682bd4ce3d176127520f0ff513fb11 (patch) | |
| tree | 40a37cc86947657486cc430c7e7648e42359c817 /dev/kernel | |
| parent | f5f62b145d472a2a2c388c385be9d1c4e5b5d84c (diff) | |
feat(kernel): expand KDBG packet structure, and prefix hexadecimal
numbers with 0x100, instead of 100h.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev/kernel')
| -rw-r--r-- | dev/kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cc | 3 | ||||
| -rw-r--r-- | dev/kernel/HALKit/AMD64/HalDebugPort.cc | 4 | ||||
| -rw-r--r-- | dev/kernel/KernelKit/CoreProcessScheduler.h | 7 | ||||
| -rw-r--r-- | dev/kernel/KernelKit/DebugOutput.h | 10 |
4 files changed, 17 insertions, 7 deletions
diff --git a/dev/kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cc b/dev/kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cc index c72a109a..3a380a42 100644 --- a/dev/kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cc +++ b/dev/kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cc @@ -139,7 +139,8 @@ EXTERN_C Kernel::Void idt_handle_breakpoint(Kernel::UIntPtr rip) { kIsScheduling = NO; - while (YES); + while (YES) + ; } kIsScheduling = NO; diff --git a/dev/kernel/HALKit/AMD64/HalDebugPort.cc b/dev/kernel/HALKit/AMD64/HalDebugPort.cc index e7448aa3..105fcf47 100644 --- a/dev/kernel/HALKit/AMD64/HalDebugPort.cc +++ b/dev/kernel/HALKit/AMD64/HalDebugPort.cc @@ -13,7 +13,7 @@ // after that we have start of additional data. namespace Kernel { -void rt_debug_listen(DebuggerPortHeader* theHook) noexcept { - NE_UNUSED(theHook); +void rt_debug_listen(KernelDebugHeader* the_hdr) noexcept { + NE_UNUSED(the_hdr); } } // namespace Kernel diff --git a/dev/kernel/KernelKit/CoreProcessScheduler.h b/dev/kernel/KernelKit/CoreProcessScheduler.h index 830f17f9..4fd6321c 100644 --- a/dev/kernel/KernelKit/CoreProcessScheduler.h +++ b/dev/kernel/KernelKit/CoreProcessScheduler.h @@ -22,8 +22,15 @@ namespace Kernel { class USER_PROCESS; class KERNEL_TASK; +class UserProcessScheduler; class UserProcessTeam; +template <typename T> +struct PROCESS_HEAP_TREE; + +template <typename T> +struct PROCESS_FILE_TREE; + enum { kInvalidTreeKind = 0U, kRedTreeKind = 100U, diff --git a/dev/kernel/KernelKit/DebugOutput.h b/dev/kernel/KernelKit/DebugOutput.h index f6cfa027..cf9378a9 100644 --- a/dev/kernel/KernelKit/DebugOutput.h +++ b/dev/kernel/KernelKit/DebugOutput.h @@ -158,8 +158,8 @@ namespace Detail { inline TerminalDevice hex_number(const Long& x) { TerminalDevice self = TerminalDevice::The(); + self << "0x"; Detail::_write_number_hex(x, self); - self.operator<<("h"); return self; } @@ -184,10 +184,12 @@ inline constexpr SizeT kDebugTypeLen = 256U; typedef Char rt_debug_type[kDebugTypeLen]; -class DebuggerPortHeader final { +/// @brief KDBG's packet header. +class KernelDebugHeader final { public: - Int16 fPort; - Int16 fPortBsy; + Int16 fPort; + Int16 fPortKind; + rt_debug_type fPortBlob; }; inline TerminalDevice& operator<<(TerminalDevice& src, const Long& num) { |
