jvbronzeado
185b33e719
mm: added page fault range caching for each mm_space_t
...
mm: added last_pagefault handling when mm_space_t is unmapped
mm: fixed styling inconsistencies, fixed last pagefault range removal
mm: fix unitialized last_pagefault member in slab data
2026-10-08 15:28:56 -03:00
Matheus
ecd16264cb
mm: handle work around shared character device mappings on fork
2026-07-08 13:03:19 -03:00
Matheus
e18333c0ab
mm: separate path for partial page in for page locking
2026-07-08 03:53:19 -03:00
Matheus
1512b2f3c6
mm: properly implement page locking
2026-07-08 01:37:12 -03:00
Matheus
af30088c0d
mm: properly handle MM_RANGE_FLAGS_REPLACE
2026-07-07 20:20:49 -03:00
Matheus
30cdfbb63c
mm: more page pinning work
2026-07-01 21:25:27 -03:00
Matheus
bec7abc91a
mm: refactor mm.c to use snake_case
2026-07-01 15:13:30 -03:00
Matheus
239c267ed3
mm: rename vmm api to mm
2026-07-01 15:00:46 -03:00
Matheus
c650036cfe
mm: better range.c variable names
2026-07-01 13:36:49 -03:00
Matheus
48a4c1c8e8
mm: split range.c from vmm.c
2026-07-01 13:31:30 -03:00
Matheus
9c5854d645
mm: refactor cache.c to snake case
2026-07-01 12:38:15 -03:00
Matheus
d890eb5fb2
mm: vmmcache -> mm_cache
2026-07-01 12:25:18 -03:00
Matheus
4d1caa6ede
mm: refactor page.c related names to snake case
2026-07-01 12:06:30 -03:00
Matheus
6f8700e678
mm: refactor pmm -> page
2026-07-01 11:56:06 -03:00
iretq
f8ebf11003
pmm: properly initialize bootloader reclaimable entries
...
Co-authored-by: Matheus <matheusuky@gmail.com >
2026-04-25 14:20:37 -03:00
Matheus
71dd6d1125
x86-64: enable smep and smap
2026-04-23 15:29:43 -03:00
Matheus
b62c71f3c9
vmmcache: fix dirty list race
2026-04-22 19:53:58 -03:00
Matheus
dfce89c1ff
pmm: fix refcounting race
2026-04-22 19:50:17 -03:00
Matheus
b7b8e3c66d
vmm: switch out old vmmrange allocator for a slab object cache
2026-04-22 19:48:14 -03:00
Matheus
e297e6d3ae
slab: support creating slabs out of pmm
2026-04-22 19:48:14 -03:00
Matheus
e121029500
vmm: reduce number of page faults on anonymous page in
2026-04-17 20:48:45 -03:00
Matheus
4e8f925156
alloc: refactor
2026-04-01 16:54:03 -03:00
Matheus
a48edb99be
vmmcache: fix TOCTOU
2026-04-01 16:46:20 -03:00
Matheus
774ae10e99
kernel: update limine to 11 and use base revision 6
2026-04-01 16:45:42 -03:00
Matheus
bf4696fa4d
vmm: fix fork not doing exact copy
2026-03-20 21:30:53 -03:00
Matheus
e69d88c917
slab: fix some issues
2026-03-03 01:19:44 -03:00
Matheus
32e174d00c
slab: fix early boot when having lots of cpus
2026-02-17 17:00:28 -03:00
Matheus
b3d5bf5586
vmm: some work towards page locking
2026-02-12 16:25:35 -03:00
Matheus
aceaab3ddf
vmm: fix changemap
2025-12-28 15:45:11 -03:00
Matheus
70d4c75cfe
vmm: use red-black trees
2025-12-26 23:02:55 -03:00
Matheus
81f9e758dc
kernel: misc fixes
2025-12-06 18:48:51 -03:00
Matheus
438ef959fe
kernel: add python script to generate init dependency graph
2025-11-13 23:31:49 -03:00
Matheus
c9d401f488
syscalls: sysinfo
2025-11-02 21:30:24 -03:00
Matheus
d8c377f0d8
vmmcache: fix
2025-10-17 13:51:50 -03:00
Matheus
049b9c9ad6
kernel: random page cache fixes
2025-10-13 00:12:24 -03:00
Matheus
a9f093fa29
Revert "vmmcache: break down lock"
...
This reverts commit a3a51abfed .
2025-09-18 20:19:10 -03:00
Matheus
a3a51abfed
vmmcache: break down lock
2025-09-07 02:14:26 -03:00
Matheus
accad4d70a
mmu: enable global pages
2025-09-07 00:05:36 -03:00
Matheus
2fa040096c
slab: rewrite slab allocator
2025-09-04 22:55:19 -03:00
Matheus
e28b2b1f2f
alloc: add two more cache sizes
2025-09-01 21:38:26 -03:00
Matheus
c381d34e96
vmmcache: fix locking bug
2025-08-25 20:05:49 -03:00
Matheus
607566531d
kernel: rework init
2025-08-14 20:25:43 -03:00
Matheus
9bf5fb14c9
misc allocator optimisations
2025-02-15 21:47:28 -03:00
Matheus
8c42826cf1
Merge pull request #16 from Qwinci/openjdk-work
...
Add openjdk17 port
2025-01-13 11:46:23 -03:00
Qwinci
d3c79c06a4
vmm: fix more logic bugs
2025-01-13 16:28:20 +02:00
Matheus
6245a3d19f
kernel: add ubsan bindings, fix some UB reported by it
2024-12-31 11:20:27 -03:00
Matheus
4ee5fa42ae
alloc: optimize
2024-12-28 22:50:08 -03:00
Matheus
a6c169e5e6
kernel: finish work of removing interruptible mutexes
2024-12-24 21:30:25 -03:00
Matheus
b1aff6378f
vmm: on anonymous copy-on-write, just map the page if refcount is 1
2024-09-24 23:25:53 -03:00
Matheus
09836801a3
usercopy: usercopy_memset and possibly user helper macro
2024-09-21 12:05:44 -03:00