Commit Graph
711 Commits
Author SHA1 Message Date
harraiken 8c6c63465f Use dedicated NMI stack on i686
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (amd64, release) (push) Successful in 41s
Builds / ExectOS (i686, release) (push) Successful in 42s
Builds / ExectOS (amd64, debug) (push) Successful in 47s
2026-03-30 11:43:09 +02:00
harraiken e9aaeab982 Replace hardcoded stack count with architecture specific constant
Builds / ExectOS (amd64, debug) (push) Successful in 41s
Builds / ExectOS (amd64, release) (push) Successful in 40s
Builds / ExectOS (i686, release) (push) Successful in 36s
Builds / ExectOS (i686, debug) (push) Successful in 37s
2026-03-28 20:53:50 +01:00
harraiken a608b26fde Implement NMI stack handling via IST
Builds / ExectOS (amd64, release) (push) Successful in 40s
Builds / ExectOS (amd64, debug) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Successful in 30s
Builds / ExectOS (i686, debug) (push) Successful in 39s
2026-03-28 20:49:18 +01:00
harraiken 3ce009db41 Merge branch 'master' into memmgr
Builds / ExectOS (amd64, debug) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Successful in 24s
Builds / ExectOS (i686, debug) (push) Successful in 24s
Builds / ExectOS (i686, release) (push) Successful in 1m3s
2026-03-28 13:59:34 +01:00
harraiken a0b0938099 Remove unused header
Builds / ExectOS (amd64, debug) (push) Failing after 29s
Builds / ExectOS (amd64, release) (push) Failing after 40s
Builds / ExectOS (i686, debug) (push) Failing after 29s
Builds / ExectOS (i686, release) (push) Failing after 38s
2026-03-27 22:07:20 +01:00
harraiken 32d3672a51 Generate distinct handlers for CPU traps and hardware interrupts
Builds / ExectOS (amd64, debug) (push) Failing after 30s
Builds / ExectOS (i686, debug) (push) Failing after 29s
Builds / ExectOS (amd64, release) (push) Failing after 40s
Builds / ExectOS (i686, release) (push) Failing after 38s
2026-03-27 20:42:41 +01:00
harraiken 0c17337388 Fix symbol naming convention for i686 trap handlers
Builds / ExectOS (amd64, debug) (push) Failing after 30s
Builds / ExectOS (amd64, release) (push) Failing after 39s
Builds / ExectOS (i686, debug) (push) Failing after 29s
Builds / ExectOS (i686, release) (push) Failing after 38s
2026-03-27 19:23:37 +01:00
harraiken 9c449bed43 Initialize IDT with specific trap handlers for each vector
Builds / ExectOS (amd64, release) (push) Failing after 28s
Builds / ExectOS (amd64, debug) (push) Failing after 38s
Builds / ExectOS (i686, release) (push) Failing after 36s
Builds / ExectOS (i686, debug) (push) Failing after 25s
2026-03-27 19:16:16 +01:00
harraiken a64aa83eb8 Provide implementation for HL::Irq
Builds / ExectOS (i686, release) (push) Successful in 30s
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (amd64, debug) (push) Successful in 42s
Builds / ExectOS (i686, debug) (push) Failing after 39s
2026-03-27 13:00:13 +01:00
harraiken 64b5de98c8 Move IRQ handling from kernel executive to hardware layer
Builds / ExectOS (amd64, release) (push) Failing after 26s
Builds / ExectOS (i686, release) (push) Failing after 23s
Builds / ExectOS (amd64, debug) (push) Failing after 36s
Builds / ExectOS (i686, debug) (push) Failing after 33s
2026-03-27 12:00:09 +01:00
harraiken 4e02664977 Merge branch 'master' into memmgr
Builds / ExectOS (amd64, release) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Successful in 28s
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (amd64, debug) (push) Successful in 41s
2026-03-26 23:48:49 +01:00
harraiken bad3aaf6e0 Export memory manager pool allocation and free functions
Builds / ExectOS (amd64, debug) (push) Successful in 29s
Builds / ExectOS (i686, debug) (push) Successful in 28s
Builds / ExectOS (i686, release) (push) Successful in 38s
Builds / ExectOS (amd64, release) (push) Successful in 40s
2026-03-26 23:46:50 +01:00
harraiken 9b19bc94b3 Replace manual IDT manipulation with SetIdtGate function call
Builds / ExectOS (i686, debug) (push) Successful in 32s
Builds / ExectOS (amd64, debug) (push) Successful in 34s
Builds / ExectOS (amd64, release) (push) Successful in 51s
Builds / ExectOS (i686, release) (push) Successful in 48s
2026-03-26 23:10:00 +01:00
harraiken 9479f3d364 Implement APIC presence check and panic if unsupported
Builds / ExectOS (amd64, debug) (push) Successful in 33s
Builds / ExectOS (amd64, release) (push) Successful in 40s
Builds / ExectOS (i686, debug) (push) Failing after 32s
Builds / ExectOS (i686, release) (push) Successful in 38s
2026-03-25 22:52:58 +01:00
harraiken 40d54743e0 Enhance kernel panic output
Builds / ExectOS (amd64, debug) (push) Successful in 26s
Builds / ExectOS (i686, debug) (push) Successful in 27s
Builds / ExectOS (i686, release) (push) Successful in 36s
Builds / ExectOS (amd64, release) (push) Successful in 39s
2026-03-25 15:02:26 +01:00
harraiken 576a2b7f1b Enhance kernel panic output
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (amd64, debug) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Failing after 39s
Builds / ExectOS (amd64, release) (push) Successful in 42s
2026-03-25 14:59:40 +01:00
harraiken 3c2ad358ef Implement MM::KernelPool::FreeProcessorStructures
Builds / ExectOS (i686, debug) (push) Successful in 29s
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (amd64, release) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 39s
2026-03-25 14:11:24 +01:00
harraiken e734ddda65 Implement TLB flushing for cache attribute changes during page removal
Builds / ExectOS (amd64, release) (push) Successful in 27s
Builds / ExectOS (i686, release) (push) Successful in 26s
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (amd64, debug) (push) Successful in 39s
2026-03-25 13:24:44 +01:00
harraiken a79f26250a Fix check for PTE removal flag
Builds / ExectOS (i686, debug) (push) Successful in 28s
Builds / ExectOS (amd64, debug) (push) Successful in 25s
Builds / ExectOS (amd64, release) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 37s
2026-03-25 09:53:57 +01:00
harraiken 441e4f510b Mark PFN as deleted instead of clearing PteAddress when freeing pages
Builds / ExectOS (amd64, debug) (push) Successful in 26s
Builds / ExectOS (i686, debug) (push) Successful in 28s
Builds / ExectOS (amd64, release) (push) Successful in 37s
Builds / ExectOS (i686, release) (push) Successful in 35s
2026-03-25 09:51:09 +01:00
harraiken 33665839ad Revert 1e01c52c0c
Builds / ExectOS (amd64, debug) (push) Successful in 25s
Builds / ExectOS (amd64, release) (push) Successful in 40s
Builds / ExectOS (i686, debug) (push) Successful in 38s
Builds / ExectOS (i686, release) (push) Successful in 30s
2026-03-25 08:59:46 +01:00
harraiken 1e01c52c0c Clear the internal list links to prevent corruption
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (i686, debug) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Successful in 41s
Builds / ExectOS (amd64, debug) (push) Successful in 45s
2026-03-25 07:48:13 +01:00
harraiken 970902f3f9 Rephrase comments for consistency
Builds / ExectOS (amd64, release) (push) Successful in 28s
Builds / ExectOS (i686, release) (push) Successful in 26s
Builds / ExectOS (amd64, debug) (push) Successful in 37s
Builds / ExectOS (i686, debug) (push) Successful in 36s
2026-03-24 23:07:06 +01:00
harraiken adff181f5a Add bounds checking and implement reclamation for large expansion pool allocations
Builds / ExectOS (i686, release) (push) Successful in 27s
Builds / ExectOS (amd64, release) (push) Successful in 25s
Builds / ExectOS (i686, debug) (push) Successful in 37s
Builds / ExectOS (amd64, debug) (push) Successful in 38s
2026-03-24 23:00:28 +01:00
harraiken 92986e1386 Set PTE frame for non-paged pool allocations
Builds / ExectOS (amd64, debug) (push) Successful in 24s
Builds / ExectOS (i686, release) (push) Successful in 36s
Builds / ExectOS (i686, debug) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Successful in 39s
2026-03-24 20:03:23 +01:00
harraiken b95613787a Strip MM_POOL_PROTECTED flag to maintain NT compatibility and ensure correct pool tracking hash lookups
Builds / ExectOS (amd64, debug) (push) Successful in 23s
Builds / ExectOS (i686, release) (push) Successful in 26s
Builds / ExectOS (i686, debug) (push) Successful in 37s
Builds / ExectOS (amd64, release) (push) Successful in 39s
2026-03-24 08:39:47 +01:00
harraiken 4292d89185 Add expansion table and overflow handling for pool tag tracking
Builds / ExectOS (i686, release) (push) Successful in 30s
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (amd64, debug) (push) Successful in 51s
Builds / ExectOS (i686, debug) (push) Successful in 49s
2026-03-24 08:13:05 +01:00
harraiken 214051e873 Update pool tracking statistics when resizing big allocations table
Builds / ExectOS (amd64, debug) (push) Successful in 27s
Builds / ExectOS (i686, release) (push) Successful in 27s
Builds / ExectOS (amd64, release) (push) Successful in 38s
Builds / ExectOS (i686, debug) (push) Successful in 37s
2026-03-23 20:36:24 +01:00
harraiken 3c52b88802 Unify naming convention for pool tracking structures
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (i686, debug) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Successful in 39s
Builds / ExectOS (amd64, release) (push) Successful in 43s
2026-03-23 20:12:18 +01:00
harraiken 944d5b5c0a Implement pool allocations and frees tracking
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (amd64, debug) (push) Successful in 35s
Builds / ExectOS (i686, release) (push) Successful in 48s
Builds / ExectOS (i686, debug) (push) Successful in 51s
2026-03-23 18:54:18 +01:00
harraiken 597628a644 Refactor big allocation tracker to use Tag
Builds / ExectOS (i686, release) (push) Successful in 46s
Builds / ExectOS (amd64, debug) (push) Successful in 51s
Builds / ExectOS (amd64, release) (push) Successful in 1m9s
Builds / ExectOS (i686, debug) (push) Successful in 1m7s
2026-03-23 12:38:31 +01:00
harraiken b97babb2bf Remove temporary hack and allocate processor structures from non-paged pool
Builds / ExectOS (amd64, debug) (push) Successful in 32s
Builds / ExectOS (i686, debug) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Successful in 43s
Builds / ExectOS (amd64, release) (push) Successful in 46s
2026-03-22 23:40:15 +01:00
harraiken caacd9e275 Separate synchronization guards from spinlock implementation
Builds / ExectOS (amd64, debug) (push) Successful in 40s
Builds / ExectOS (amd64, release) (push) Successful in 31s
Builds / ExectOS (i686, debug) (push) Successful in 37s
Builds / ExectOS (i686, release) (push) Successful in 29s
2026-03-21 22:46:56 +01:00
harraiken 916d124c9b Separate synchronization guards from spinlock implementation
Builds / ExectOS (amd64, debug) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Successful in 40s
Builds / ExectOS (i686, debug) (push) Successful in 38s
Builds / ExectOS (i686, release) (push) Successful in 34s
2026-03-21 22:44:00 +01:00
harraiken d85e313c15 Implement core pool allocation and deallocation logic
Builds / ExectOS (amd64, debug) (push) Successful in 29s
Builds / ExectOS (i686, debug) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Successful in 40s
Builds / ExectOS (i686, release) (push) Successful in 38s
2026-03-21 20:35:02 +01:00
harraiken 233440c8be Merge branch 'master' into memmgr
Builds / ExectOS (amd64, release) (push) Successful in 23s
Builds / ExectOS (i686, release) (push) Successful in 26s
Builds / ExectOS (amd64, debug) (push) Successful in 41s
Builds / ExectOS (i686, debug) (push) Successful in 38s
2026-03-21 18:30:45 +01:00
harraiken 140af4278e Fix uninitialized member in SpinLockGuard
Builds / ExectOS (amd64, debug) (push) Successful in 39s
Builds / ExectOS (i686, debug) (push) Successful in 37s
Builds / ExectOS (amd64, release) (push) Successful in 52s
Builds / ExectOS (i686, release) (push) Successful in 50s
2026-03-21 18:29:19 +01:00
harraiken f862871a1f Implement RAII guard for memory pool synchronization
Builds / ExectOS (amd64, release) (push) Failing after 29s
Builds / ExectOS (amd64, debug) (push) Successful in 31s
Builds / ExectOS (i686, release) (push) Failing after 39s
Builds / ExectOS (i686, debug) (push) Successful in 41s
2026-03-19 19:59:40 +01:00
harraiken afb20a1796 Decouple pool initialization and validation from allocation logic
Builds / ExectOS (i686, debug) (push) Successful in 30s
Builds / ExectOS (amd64, debug) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Successful in 46s
Builds / ExectOS (amd64, release) (push) Successful in 50s
2026-03-18 20:31:06 +01:00
harraiken 876923e107 Track valid physical memory pages using a PFN bitmap
Builds / ExectOS (i686, debug) (push) Successful in 28s
Builds / ExectOS (amd64, debug) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Successful in 47s
Builds / ExectOS (i686, release) (push) Successful in 44s
2026-03-17 00:05:33 +01:00
harraiken 3d7fe25471 Update panic invocations with detailed error context
Builds / ExectOS (amd64, release) (push) Successful in 28s
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (i686, debug) (push) Successful in 36s
Builds / ExectOS (i686, release) (push) Successful in 36s
2026-03-16 16:00:21 +01:00
harraiken 184ce5735e Add runlevel verification to memory pool allocations
Builds / ExectOS (amd64, release) (push) Successful in 23s
Builds / ExectOS (i686, release) (push) Successful in 39s
Builds / ExectOS (amd64, debug) (push) Successful in 41s
Builds / ExectOS (i686, debug) (push) Successful in 28s
2026-03-16 15:33:36 +01:00
harraiken 76d99dc9db Introduce pool allocation and free routines
Builds / ExectOS (i686, debug) (push) Successful in 42s
Builds / ExectOS (amd64, debug) (push) Successful in 43s
Builds / ExectOS (amd64, release) (push) Successful in 52s
Builds / ExectOS (i686, release) (push) Successful in 49s
2026-03-16 13:54:42 +01:00
harraiken d401ac4540 Remove redundant comments from panic calls
Builds / ExectOS (i686, debug) (push) Successful in 42s
Builds / ExectOS (amd64, debug) (push) Successful in 44s
Builds / ExectOS (i686, release) (push) Successful in 46s
Builds / ExectOS (amd64, release) (push) Successful in 49s
2026-03-16 09:55:26 +01:00
harraiken 80092a299e Ensure correct PTE value assignment via accessors
Builds / ExectOS (amd64, release) (push) Successful in 28s
Builds / ExectOS (i686, release) (push) Successful in 29s
Builds / ExectOS (amd64, debug) (push) Successful in 40s
Builds / ExectOS (i686, debug) (push) Successful in 38s
2026-03-15 20:31:33 +01:00
harraiken 42525e5993 Unify PTE type definitions across architectures
Builds / ExectOS (amd64, debug) (push) Successful in 23s
Builds / ExectOS (i686, debug) (push) Successful in 27s
Builds / ExectOS (i686, release) (push) Successful in 37s
Builds / ExectOS (amd64, release) (push) Successful in 40s
2026-03-15 20:23:44 +01:00
harraiken 0fed593147 Ensure SS and RSP are saved in trap frame
Builds / ExectOS (i686, debug) (push) Successful in 32s
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (amd64, debug) (push) Successful in 46s
Builds / ExectOS (i686, release) (push) Successful in 43s
2026-03-15 17:32:01 +01:00
harraiken 6cdb66cbb3 Ensure SS and ESP are saved in trap frame
Builds / ExectOS (amd64, release) (push) Successful in 36s
Builds / ExectOS (amd64, debug) (push) Failing after 45s
Builds / ExectOS (i686, debug) (push) Successful in 35s
Builds / ExectOS (i686, release) (push) Successful in 42s
2026-03-15 00:33:09 +01:00
harraiken d263f17831 Refactor panic calls in memory manager
Builds / ExectOS (i686, debug) (push) Successful in 27s
Builds / ExectOS (amd64, debug) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 38s
2026-03-13 19:44:29 +01:00
harraiken 6175413db2 Merge branch 'master' into memmgr
Builds / ExectOS (amd64, release) (push) Failing after 27s
Builds / ExectOS (i686, debug) (push) Failing after 26s
Builds / ExectOS (i686, release) (push) Failing after 31s
Builds / ExectOS (amd64, debug) (push) Failing after 35s
2026-03-13 19:43:01 +01:00