decoupled ULIM from KERNBASE. rebuild your xcc.
authorAndrew Waterman <waterman@s141.Millennium.Berkeley.EDU>
Wed, 1 Jun 2011 11:24:31 +0000 (04:24 -0700)
committerKevin Klues <klueska@cs.berkeley.edu>
Thu, 3 Nov 2011 00:36:03 +0000 (17:36 -0700)
now, each ros/arch/mmu.h defines ULIM individually.

apologies for not being able to test this for x86.  it does compile, at least.

kern/arch/i686/ros/mmu.h
kern/arch/riscv/ros/mmu.h
kern/arch/sparc/ros/mmu.h
kern/include/ros/memlayout.h

index 6f9124b..36155a4 100644 (file)
@@ -9,6 +9,7 @@ typedef unsigned long pde_t;
 // All physical memory mapped at this address
 #define KERNBASE        0xC0000000
 #define KERN_LOAD_ADDR  KERNBASE
+#define ULIM            0x80000000
 
 // Use this if needed in annotations
 #define IVY_KERNBASE (0xC000U << 16)
index 89fdf6f..7dfad1a 100644 (file)
@@ -4,6 +4,7 @@
 // All physical memory mapped at this address
 #ifdef __riscv64
 # define KERNBASE       0xFFFF800000000000
+# define ULIM           0x0000800000000000
 # define KERN_LOAD_ADDR 0xFFFFFFFF80000000
 # define NPTLEVELS                       4
 # define L1PGSHIFT              (12+9+9+9)
@@ -18,6 +19,7 @@
 # define PTSIZE                   L2PGSIZE
 #else
 # define KERNBASE               0x80000000
+# define ULIM                   0x7F000000
 # define KERN_LOAD_ADDR           KERNBASE
 # define NPTLEVELS                       2
 # define L1PGSHIFT                 (12+10)
index 6866fda..430e3fb 100644 (file)
@@ -4,6 +4,7 @@
 // All physical memory mapped at this address
 #define KERNBASE        0x80000000
 #define KERN_LOAD_ADDR  KERNBASE
+#define ULIM            0x70000000
 
 // Use this if needed in annotations
 #define IVY_KERNBASE (0x8000U << 16)
index 7d2ce79..47a1b7a 100644 (file)
@@ -96,7 +96,6 @@
 #define KSTACKTOP      VPT
 #define KSTKSHIFT      (PGSHIFT+3)             // KSTKSIZE == 8*PGSIZE
 #define KSTKSIZE       (1 << KSTKSHIFT)        // size of a kernel stack
-#define ULIM           (KSTACKTOP - PTSIZE)
 
 /*
  * User read-only mappings! Anything below here til UTOP are readonly to user.