Commit Graph

1411 Commits

Author SHA1 Message Date
3ce009db41 Merge branch 'master' into memmgr
All checks were successful
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
a0b0938099 Remove unused header
Some checks failed
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
32d3672a51 Generate distinct handlers for CPU traps and hardware interrupts
Some checks failed
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
0c17337388 Fix symbol naming convention for i686 trap handlers
Some checks failed
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
9c449bed43 Initialize IDT with specific trap handlers for each vector
Some checks failed
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
a64aa83eb8 Provide implementation for HL::Irq
Some checks failed
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
64b5de98c8 Move IRQ handling from kernel executive to hardware layer
Some checks failed
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
4e02664977 Merge branch 'master' into memmgr
All checks were successful
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
bad3aaf6e0 Export memory manager pool allocation and free functions
All checks were successful
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
9b19bc94b3 Replace manual IDT manipulation with SetIdtGate function call
All checks were successful
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
9479f3d364 Implement APIC presence check and panic if unsupported
Some checks failed
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
8d97ea4112 Merge branch 'master' into memmgr
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in 32s
Builds / ExectOS (i686, release) (push) Successful in 30s
Builds / ExectOS (amd64, debug) (push) Successful in 44s
Builds / ExectOS (i686, debug) (push) Successful in 41s
2026-03-25 15:06:14 +01:00
40d54743e0 Enhance kernel panic output
All checks were successful
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
576a2b7f1b Enhance kernel panic output
Some checks failed
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
3c2ad358ef Implement MM::KernelPool::FreeProcessorStructures
All checks were successful
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
e734ddda65 Implement TLB flushing for cache attribute changes during page removal
All checks were successful
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
a79f26250a Fix check for PTE removal flag
All checks were successful
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
441e4f510b Mark PFN as deleted instead of clearing PteAddress when freeing pages
All checks were successful
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
33665839ad Revert 1e01c52c0c
All checks were successful
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
1e01c52c0c Clear the internal list links to prevent corruption
All checks were successful
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
970902f3f9 Rephrase comments for consistency
All checks were successful
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
adff181f5a Add bounds checking and implement reclamation for large expansion pool allocations
All checks were successful
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
92986e1386 Set PTE frame for non-paged pool allocations
All checks were successful
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
9a34a5f735 Precommit page map to allocate memory
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in 26s
Builds / ExectOS (i686, debug) (push) Successful in 27s
Builds / ExectOS (amd64, release) (push) Successful in 38s
Builds / ExectOS (i686, release) (push) Successful in 34s
2026-03-24 16:54:17 +01:00
398db4bde1 Fix memory map size tracking and memory leak
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in 32s
Builds / ExectOS (i686, release) (push) Successful in 30s
Builds / ExectOS (i686, debug) (push) Successful in 38s
Builds / ExectOS (amd64, debug) (push) Successful in 40s
2026-03-24 16:12:33 +01:00
719564ba74 Fix memory corruption caused by UEFI memory map size changes during allocation
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in 35s
Builds / ExectOS (amd64, debug) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 31s
Builds / ExectOS (i686, debug) (push) Successful in 37s
2026-03-24 16:04:53 +01:00
b95613787a Strip MM_POOL_PROTECTED flag to maintain NT compatibility and ensure correct pool tracking hash lookups
All checks were successful
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
4292d89185 Add expansion table and overflow handling for pool tag tracking
All checks were successful
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
214051e873 Update pool tracking statistics when resizing big allocations table
All checks were successful
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
3c52b88802 Unify naming convention for pool tracking structures
All checks were successful
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
944d5b5c0a Implement pool allocations and frees tracking
All checks were successful
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
597628a644 Refactor big allocation tracker to use Tag
All checks were successful
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
b97babb2bf Remove temporary hack and allocate processor structures from non-paged pool
All checks were successful
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
caacd9e275 Separate synchronization guards from spinlock implementation
All checks were successful
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
916d124c9b Separate synchronization guards from spinlock implementation
All checks were successful
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
d85e313c15 Implement core pool allocation and deallocation logic
All checks were successful
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
b83eaaa820 Add definitions for pool management structures
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in 32s
Builds / ExectOS (amd64, debug) (push) Successful in 40s
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 28s
2026-03-21 19:10:58 +01:00
233440c8be Merge branch 'master' into memmgr
All checks were successful
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
140af4278e Fix uninitialized member in SpinLockGuard
All checks were successful
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
c67372d747 Revert e2eff2b836
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in 27s
Builds / ExectOS (i686, debug) (push) Successful in 25s
Builds / ExectOS (i686, release) (push) Successful in 35s
Builds / ExectOS (amd64, release) (push) Successful in 37s
2026-03-19 20:13:07 +01:00
e2eff2b836 Fix DebugPrint definition
Some checks failed
Builds / ExectOS (amd64, debug) (push) Successful in 34s
Builds / ExectOS (i686, debug) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Failing after 31s
Builds / ExectOS (i686, release) (push) Failing after 31s
2026-03-19 20:07:30 +01:00
930c9d3193 Replace NULL with NULLPTR
All checks were successful
Builds / ExectOS (i686, debug) (push) Successful in 27s
Builds / ExectOS (amd64, debug) (push) Successful in 29s
Builds / ExectOS (i686, release) (push) Successful in 34s
Builds / ExectOS (amd64, release) (push) Successful in 36s
2026-03-19 20:03:26 +01:00
f862871a1f Implement RAII guard for memory pool synchronization
Some checks failed
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
afb20a1796 Decouple pool initialization and validation from allocation logic
All checks were successful
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
876923e107 Track valid physical memory pages using a PFN bitmap
All checks were successful
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
3d7fe25471 Update panic invocations with detailed error context
All checks were successful
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
184ce5735e Add runlevel verification to memory pool allocations
All checks were successful
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
76d99dc9db Introduce pool allocation and free routines
All checks were successful
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
d401ac4540 Remove redundant comments from panic calls
All checks were successful
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
22f9525e92 Fix critical memory corruption bug caused by overwriting active page tables marked as free memory
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Successful in 32s
Builds / ExectOS (i686, debug) (push) Successful in 38s
Builds / ExectOS (amd64, debug) (push) Successful in 41s
2026-03-15 22:34:58 +01:00