[haiku-commits] r33598 - haiku/trunk/src/system/kernel/vm

  • From: axeld@xxxxxxxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Thu, 15 Oct 2009 13:35:32 +0200 (CEST)

Author: axeld
Date: 2009-10-15 13:35:31 +0200 (Thu, 15 Oct 2009)
New Revision: 33598
Changeset: http://dev.haiku-os.org/changeset/33598/haiku

Modified:
   haiku/trunk/src/system/kernel/vm/vm.cpp
Log:
* While r33037 fixed the alignment of areas put into reserved areas, it actually
  broke their placement at the end of the reserved area, which was the main
  reason #4778 happened so often (it would have been more hidden else).


Modified: haiku/trunk/src/system/kernel/vm/vm.cpp
===================================================================
--- haiku/trunk/src/system/kernel/vm/vm.cpp     2009-10-15 11:23:38 UTC (rev 
33597)
+++ haiku/trunk/src/system/kernel/vm/vm.cpp     2009-10-15 11:35:31 UTC (rev 
33598)
@@ -1252,10 +1252,13 @@
                                                // The new area will be placed 
at the end of the
                                                // reserved area, and the 
reserved area will be resized
                                                // to make space
+                                               alignedBase = 
ROUNDDOWN(next->base + next->size - size,
+                                                       alignment);
+
                                                foundSpot = true;
                                                next->size = alignedBase - 
next->base;
+                                               area->base = alignedBase;
                                                last = next;
-                                               area->base = alignedBase;
                                                break;
                                        }
 


Other related posts:

  • » [haiku-commits] r33598 - haiku/trunk/src/system/kernel/vm - axeld