For some reason, on 32-bit x86 the mmap_start address is very close to the 
beginning of the stack.  Because of this, benchmarks like gzip that 
allocate 64MB using mmap fail (while giving a soewhat obscure "memory 
already mapped" pagetable error).

This patch arbitrarily moves the value down some, the value picked 
probably isn't a good one.


diff -r 1b22ddf9266a src/arch/x86/process.cc
--- a/src/arch/x86/process.cc   Mon Sep 21 23:04:31 2009 -0400
+++ b/src/arch/x86/process.cc   Mon Sep 21 23:05:57 2009 -0400
@@ -184,7 +184,7 @@
 
     // Set up region for mmaps. This was determined empirically and may not
     // always be correct.
-    mmap_start = mmap_end = (Addr)0xf7ffd000ULL;
+    mmap_start = mmap_end = (Addr)0xd7ffd000ULL;
 }
 
 SyscallDesc*
_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to