]> rtime.felk.cvut.cz Git - l4.git/blobdiff - l4/pkg/sigma0/server/src/init_mem.cc
update
[l4.git] / l4 / pkg / sigma0 / server / src / init_mem.cc
index c85f229229c5b836c73b888d7764db6483e40f02..1b2685883297172bc6ae10c942e199bfb3c24202 100644 (file)
@@ -45,8 +45,17 @@ init_memory(l4_kernel_info_t *info)
         continue;
 
       Mem_desc::Mem_type type = md->type();
-      unsigned long end = l4_round_page(md->end())-1;
-      unsigned long start = l4_trunc_page(md->start());
+      unsigned long start, end;
+      if (type == Mem_desc::Conventional)
+        {
+          start = l4_round_page(md->start());
+          end = l4_trunc_page(md->end() + 1) - 1;
+        }
+      else
+        {
+          start = l4_trunc_page(md->start());
+          end = l4_round_page(md->end()) - 1;
+        }
 
       switch (type)
        {