From 5562f078fa9bf0ddb7c552c931e902bda6c4926c Mon Sep 17 00:00:00 2001 From: Matheus Date: Mon, 27 May 2024 22:01:16 -0300 Subject: [PATCH] pmm: fix page cache takepage retry memory leak --- kernel-src/mm/pmm.c | 1 + 1 file changed, 1 insertion(+) diff --git a/kernel-src/mm/pmm.c b/kernel-src/mm/pmm.c index e6fd28f8..93125770 100644 --- a/kernel-src/mm/pmm.c +++ b/kernel-src/mm/pmm.c @@ -180,6 +180,7 @@ void *pmm_allocpage(int section) { if (cachepage && vmmcache_takepage(page) == EAGAIN) { // someone already got the page from the cache between us holding it and taking it + pmm_release(pmm_getpageaddress(page)); page = NULL; // retry it from the start, as an anonymous page could have been released while the lock was not held goto retry;