From cd41ed1758f4842d7b78870385e16b579cc89c38 Mon Sep 17 00:00:00 2001 From: Kimplul Date: Sun, 25 Jan 2026 17:14:53 +0200 Subject: implement dmem semi-properly + Add tests and fix virtual mapping, this is enough to start writing proper userspace drivers --- src/vmem.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/vmem.c') diff --git a/src/vmem.c b/src/vmem.c index 76e0ece..afdac95 100644 --- a/src/vmem.c +++ b/src/vmem.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include @@ -197,6 +198,14 @@ static void __free_mapping(struct tcb *t, struct mem_region *m) if (is_set(m->flags, MR_NONBACKED)) return; + if (is_set(m->flags, MR_DEV)) { + stat_t ret = free_known_devmem(t, m); + MAYBE_UNUSED(ret); + + assert(ret == OK); + return; + } + pm_t start = __addr(m->start); pm_t end = __addr(m->end); size_t size = end - start; -- cgit v1.3