Loïc Grégoire
cefc69e1b5
all: more tidying
2026-10-08 18:01:42 -04:00
Loïc Grégoire
619c373d47
all: tidy
2026-10-07 18:03:06 -04:00
Loïc Grégoire
b802919fc2
ke: add lock warden
2026-10-04 11:36:28 -04:00
Loïc Grégoire
10c6c3d27f
all: upgrade to zig 0.17
2026-10-03 17:00:13 -04:00
Loïc Grégoire
7d83278bc6
mm/zone: formatting
2026-09-27 21:36:45 -04:00
marv7000
2c20f0b456
riscv64: initial risc-v port
2026-09-27 21:32:00 -04:00
Loïc Grégoire
a9028e53ff
ke/smr: allow invalid sequences in deferred_advance_commit
...
This was buggy when the race was lost and it ended up trying to commit a
deferred advance of 0, now explicitly make the magazine's sequence invalid and
do nothing in deferred_advance_commit, avoiding an integer underflow.
2026-09-19 23:03:39 -04:00
Loïc Grégoire
472cecea08
ex: move vmem to ex
2026-09-16 16:59:22 -04:00
Loïc Grégoire
eeadc1420a
mm/vmem: add importing and rework API
2026-09-13 22:13:18 -04:00
Loïc Grégoire
084d28b829
mm/vmem: add quantum caching
2026-09-13 15:47:36 -04:00
Loïc Grégoire
0c3e885797
mm/zone: rework around import layer
...
This ends up being cleaner for doing qcaches
2026-09-12 19:41:06 -04:00
Loïc Grégoire
1176e97e90
mm: more aggressive reclamation
2026-09-07 20:58:25 -04:00
Loïc Grégoire
b5d3c5fdb9
mm/zone: free empty slabs on drain()
2026-09-07 20:58:14 -04:00
Loïc Grégoire
497e08bd7b
all: standardize suffixes
...
ki -> kep
mi -> mmp
2026-09-02 22:20:25 -04:00
Loïc Grégoire
906433ca6d
mm/zone: remove leftover log
2026-08-29 20:04:40 -04:00
Loïc Grégoire
f205065d02
mm: initial balance manager code
2026-08-29 20:03:35 -04:00
Loïc Grégoire
d06351f31c
mm/zone: defer free slab destruction
2026-08-20 21:59:28 -04:00
Loïc Grégoire
63cd104616
ke: optimize TLB shootdowns
2026-08-09 16:44:41 -04:00
Loïc Grégoire
bec872bc26
all: refactor coding style
2026-08-05 17:43:46 -04:00
Loïc Grégoire
e36416304b
all: type-safe time units
2026-08-02 00:02:44 -04:00
Loïc Grégoire
24372a2b4e
ke/wait: add wait_reason
2026-08-02 00:02:00 -04:00
Loïc Grégoire
05c7694776
ke/wait: make timeout parameter explicit
2026-08-01 22:44:22 -04:00
Loïc Grégoire
5bba618575
mm/zone: more SMR features
2026-08-01 19:10:26 -04:00
Loïc Grégoire
0f0ddffb2c
ex: add DelayedWorkItem
...
Separate WorkItem from DelayedWorkItem so that the former doesn't pay
the price of a timer and a Dpc if it won't ever get delayed.
2026-08-01 09:53:17 -04:00
Loïc Grégoire
9c48a5207c
ke/smr: expose simpler APIs
2026-07-26 20:41:01 -04:00
Loïc Grégoire
a969624f20
ke/smr: add support for preemptible SMR
2026-07-23 16:39:43 -04:00
Loïc Grégoire
8b92a302a2
mm/zone: remove slab coloring
...
This simplifies the code and fixes a race condition where the color
was read and updated without taking the zone lock in slab_create().
I don't think coloring is very useful these days anyway.
2026-07-20 20:46:00 -04:00
Loïc Grégoire
ea33fcab30
mm/zone: add SMR zones
2026-07-19 16:51:22 -04:00
Loïc Grégoire
c1043f224a
ex: rename workqueue to work
2026-07-18 16:48:03 -04:00
Loïc Grégoire
782196275b
mm+ke: make shootdowns use HandoffList
2026-07-18 16:45:32 -04:00
Loïc Grégoire
301946c774
all: use root boot info pointer
2026-07-18 14:41:30 -04:00
Loïc Grégoire
96d2bee857
loader: map pfndb and cleanup
2026-07-18 14:06:36 -04:00
Loïc Grégoire
a79c7a07cb
loader: initial loader code
2026-07-16 19:48:01 -04:00
Loïc Grégoire
898ceb171e
mm/zone: oops fix compile error
2026-07-05 20:24:47 -04:00
Loïc Grégoire
f416f3bf6c
mm/zone: pad CPUs to their own cache lines
2026-07-05 00:32:44 -04:00
Loïc Grégoire
79b96ed3dc
mm/zone: add hardening features
2026-07-04 23:43:57 -04:00
Loïc Grégoire
1647da3329
mm/zone: add tuning options
2026-07-04 18:17:38 -04:00
Loïc Grégoire
e993ea711c
mm/zone: add drain
2026-07-03 23:32:18 -04:00
Loïc Grégoire
a5d42963ff
mm/zone: add dynamic depot resizing
2026-07-03 23:08:15 -04:00
Loïc Grégoire
881022f14d
mm/phys: calculate memory thresholds
2026-07-03 10:28:34 -04:00
Loïc Grégoire
d1787253c4
mm/zone: add magazine trimming
2026-07-03 10:28:17 -04:00
Loïc Grégoire
4a03a10d0c
everywhere: nuke UM
2026-07-02 20:01:12 -04:00
Loïc Grégoire
efe5df1567
mm: pmap overhaul
2026-07-01 13:02:39 -04:00
Loïc Grégoire
85e6a8fec9
mm: make physical allocation blocking (WIP)
2026-06-29 22:33:43 -04:00
Loïc Grégoire
c10f5a6984
mm: rework page frame allocator
2026-06-27 11:35:46 -04:00
Loïc Grégoire
25c770999f
all: refactor imports
2026-06-27 10:55:19 -04:00
Loïc Grégoire
37293bef32
mm: add page struct size to log
2026-06-27 10:55:09 -04:00
Loïc Grégoire
4ba57ad42a
ke+mm: add TLB shootdown and memory reclamation.
2026-06-25 21:33:14 -04:00
Loïc Grégoire
16d5c6e5c6
mm: add Space
2026-06-20 12:41:22 -04:00
Loïc Grégoire
a3a9258158
mm/vmem: fix wrong rotor assignment
2026-05-14 09:09:48 -04:00