Index: kernel/generic/src/mm/frame.c
===================================================================
--- kernel/generic/src/mm/frame.c	(revision c6e314a78bffc7c64e7095fea28ffc280b031237)
+++ kernel/generic/src/mm/frame.c	(revision da747470c430a8c8b5e0ad34a1485ec2d5f3e0cb)
@@ -864,4 +864,7 @@
 			addr = PFN2ADDR(confframe);
 			if (overlaps(addr, PFN2ADDR(confcount), KA2PA(config.base), config.kernel_size))
+				continue;
+			
+			if (overlaps(addr, PFN2ADDR(confcount), KA2PA(config.stack_base), config.stack_size))
 				continue;
 			
@@ -1069,7 +1072,6 @@
 	frame_arch_init();
 	if (config.cpu_active == 1) {
-		pfn_t firstframe = ADDR2PFN(KA2PA(config.base));
-		pfn_t lastframe = ADDR2PFN(KA2PA(config.base+config.kernel_size));
-		frame_mark_unavailable(firstframe,lastframe-firstframe+1);
+		frame_mark_unavailable(ADDR2PFN(KA2PA(config.base)), SIZE2FRAMES(config.kernel_size));
+		frame_mark_unavailable(ADDR2PFN(KA2PA(config.stack_base)), SIZE2FRAMES(config.stack_size));
 		
 		count_t i;
