From bb019193b4d549ea7e762109572f325633d7787f Mon Sep 17 00:00:00 2001 From: Matheus Date: Thu, 20 Aug 2026 23:35:37 -0300 Subject: [PATCH] page cache: fix pages being made anonymous twice --- kernel-src/mm/cache.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/kernel-src/mm/cache.c b/kernel-src/mm/cache.c index 714eba04..207a54d2 100644 --- a/kernel-src/mm/cache.c +++ b/kernel-src/mm/cache.c @@ -166,6 +166,8 @@ int mm_cache_get_page(vnode_t *vnode, uintmax_t offset, int flags, page_t **res) goto retry_lookup; } + page->backing = vnode; + page->offset = offset; __assert(insert_page(vnode, offset, page, trie_preallocation) == 0); pushlock_release_exclusive(&vnode->pages_lock); @@ -181,9 +183,6 @@ int mm_cache_get_page(vnode_t *vnode, uintmax_t offset, int flags, page_t **res) } else if (error) { remove_page(vnode, offset); mm_make_page_anonymous(page); - } else { - page->backing = vnode; - page->offset = offset; } pushlock_release_exclusive(&vnode->pages_lock);