Commit Graph

194 Commits

Author SHA1 Message Date
e734ddda65 Implement TLB flushing for cache attribute changes during page removal 2026-03-25 13:24:44 +01:00
a79f26250a Fix check for PTE removal flag 2026-03-25 09:53:57 +01:00
441e4f510b Mark PFN as deleted instead of clearing PteAddress when freeing pages 2026-03-25 09:51:09 +01:00
33665839ad Revert 1e01c52c0c 2026-03-25 08:59:46 +01:00
1e01c52c0c Clear the internal list links to prevent corruption 2026-03-25 07:48:13 +01:00
970902f3f9 Rephrase comments for consistency 2026-03-24 23:07:06 +01:00
adff181f5a Add bounds checking and implement reclamation for large expansion pool allocations 2026-03-24 23:00:28 +01:00
92986e1386 Set PTE frame for non-paged pool allocations 2026-03-24 20:03:23 +01:00
b95613787a Strip MM_POOL_PROTECTED flag to maintain NT compatibility and ensure correct pool tracking hash lookups 2026-03-24 08:39:47 +01:00
4292d89185 Add expansion table and overflow handling for pool tag tracking 2026-03-24 08:13:05 +01:00
214051e873 Update pool tracking statistics when resizing big allocations table 2026-03-23 20:36:24 +01:00
3c52b88802 Unify naming convention for pool tracking structures 2026-03-23 20:12:18 +01:00
944d5b5c0a Implement pool allocations and frees tracking 2026-03-23 18:54:18 +01:00
597628a644 Refactor big allocation tracker to use Tag 2026-03-23 12:38:31 +01:00
b97babb2bf Remove temporary hack and allocate processor structures from non-paged pool 2026-03-22 23:40:15 +01:00
d85e313c15 Implement core pool allocation and deallocation logic 2026-03-21 20:35:02 +01:00
afb20a1796 Decouple pool initialization and validation from allocation logic 2026-03-18 20:31:06 +01:00
876923e107 Track valid physical memory pages using a PFN bitmap 2026-03-17 00:05:33 +01:00
3d7fe25471 Update panic invocations with detailed error context 2026-03-16 16:00:21 +01:00
184ce5735e Add runlevel verification to memory pool allocations 2026-03-16 15:33:36 +01:00
76d99dc9db Introduce pool allocation and free routines 2026-03-16 13:54:42 +01:00
80092a299e Ensure correct PTE value assignment via accessors 2026-03-15 20:31:33 +01:00
42525e5993 Unify PTE type definitions across architectures 2026-03-15 20:23:44 +01:00
d263f17831 Refactor panic calls in memory manager 2026-03-13 19:44:29 +01:00
7d2b41a044 Calculate virtual address per page when initializing PFN entries 2026-03-13 19:35:29 +01:00
5fe0740c2e Initialize system PTE pool for non-paged expansion pool 2026-03-10 23:09:40 +01:00
5a78512561 Correct PTE mapping logic during multiple page allocation 2026-03-05 17:47:03 +01:00
b7a92ccce4 Implement memory deallocation and coalescing for non-paged pool 2026-03-05 10:08:54 +01:00
8d2dfa6f62 Set up owner pointers for all pages during pool initialization 2026-03-04 22:44:45 +01:00
5a9b7c0258 Implement canonical address validation routine 2026-03-04 14:15:33 +01:00
5368fe2e8d Remove redundant static initialization of LowestPhysicalPage 2026-03-03 22:42:55 +01:00
3e1f57f67c Improve type safety of physical page boundaries initialization 2026-03-03 08:51:22 +01:00
44f27fad28 Correct physical memory range detection 2026-03-03 08:22:31 +01:00
ae8ac1eacb Fix uninitialized PTE pages causing memory corruption 2026-03-03 06:44:40 +01:00
7bdd0dfe2c Implement basic non-paged pool allocator 2026-02-26 20:10:03 +01:00
5778a761b5 Initialize paged pool after PFN database setup 2026-02-26 16:42:18 +01:00
d7d125dd50 Initialize paged pool alongside non-paged pool 2026-02-26 13:54:10 +01:00
511dd15c0c Implement page allocation interface 2026-02-26 13:42:58 +01:00
278def3081 Correct comment phrasing 2026-02-26 10:57:19 +01:00
0658e98436 Expose the number of available physical pages 2026-02-25 20:25:50 +01:00
bfdb7bc476 Refactor PFN linking logic 2026-02-25 19:27:53 +01:00
7a44901064 Add definition for guarded PTE flag and remove hardcoded value 2026-02-25 12:14:26 +01:00
f7b7b61ea4 Add interface to retrieve page map level (PML) 2026-02-11 20:23:24 +01:00
53f7945771 Reorder initialization sequence and flush TLB 2026-02-07 20:37:23 +01:00
9a5ef6fc00 Map PDE and PTE ranges for i686 non-paged pool 2026-02-07 20:01:17 +01:00
80ea0b49d0 Fix boot image size alignment calculation 2026-02-07 00:30:41 +01:00
2e0e085acb Minor style fixes 2026-02-06 20:52:59 +01:00
0ce2741e18 Deduplicate PFN descriptor processing logic across architectures 2026-02-06 09:08:59 +01:00
a46f30045a Fix stale comment 2026-02-06 08:51:23 +01:00
0763a9522b Ensure paging hierarchy exists before processing memory descriptors 2026-02-06 08:40:24 +01:00