Title: [201279] releases/WebKitGTK/webkit-2.12/Source/bmalloc
Revision
201279
Author
carlo...@webkit.org
Date
2016-05-23 05:58:49 -0700 (Mon, 23 May 2016)

Log Message

Merge r201050 - REGRESSION: JetStream crashes on some iPhones
https://bugs.webkit.org/show_bug.cgi?id=157814

Reviewed by Michael Saboff.

* bmalloc/Sizes.h: Reduce smallMax to 32kB.

Previous justification for 64kB was:

    * bmalloc/Sizes.h: Upped smallMax to 64kB. Upping to 32kB is pretty
    reasonable, since sizes between 16kB and 32kB share page sizes. I went
    all the way up to 64kB because the GC uses 64kB blocks, and also just
    for extra padding to ensure that large allocations are indeed rare.

It turns out that the bump to 64kB substantially increases our memory
high water mark on JetStream, leading to jetsam crashes. Also, there
doesn't seem to be a practical performance problem to putting objects in
the (32kB - 64kB) range in the large allocator.

Modified Paths

Diff

Modified: releases/WebKitGTK/webkit-2.12/Source/bmalloc/ChangeLog (201278 => 201279)


--- releases/WebKitGTK/webkit-2.12/Source/bmalloc/ChangeLog	2016-05-23 12:52:41 UTC (rev 201278)
+++ releases/WebKitGTK/webkit-2.12/Source/bmalloc/ChangeLog	2016-05-23 12:58:49 UTC (rev 201279)
@@ -1,3 +1,24 @@
+2016-05-17  Geoffrey Garen  <gga...@apple.com>
+
+        REGRESSION: JetStream crashes on some iPhones
+        https://bugs.webkit.org/show_bug.cgi?id=157814
+
+        Reviewed by Michael Saboff.
+
+        * bmalloc/Sizes.h: Reduce smallMax to 32kB. 
+
+        Previous justification for 64kB was:
+
+            * bmalloc/Sizes.h: Upped smallMax to 64kB. Upping to 32kB is pretty
+            reasonable, since sizes between 16kB and 32kB share page sizes. I went
+            all the way up to 64kB because the GC uses 64kB blocks, and also just
+            for extra padding to ensure that large allocations are indeed rare.
+
+        It turns out that the bump to 64kB substantially increases our memory
+        high water mark on JetStream, leading to jetsam crashes. Also, there
+        doesn't seem to be a practical performance problem to putting objects in
+        the (32kB - 64kB) range in the large allocator.
+
 2016-04-19  Geoffrey Garen  <gga...@apple.com>
 
         bmalloc: fix up overflow checks

Modified: releases/WebKitGTK/webkit-2.12/Source/bmalloc/bmalloc/Sizes.h (201278 => 201279)


--- releases/WebKitGTK/webkit-2.12/Source/bmalloc/bmalloc/Sizes.h	2016-05-23 12:52:41 UTC (rev 201278)
+++ releases/WebKitGTK/webkit-2.12/Source/bmalloc/bmalloc/Sizes.h	2016-05-23 12:58:49 UTC (rev 201279)
@@ -54,7 +54,7 @@
     static const size_t smallPageLineCount = smallPageSize / smallLineSize;
 
     static const size_t maskSizeClassMax = 512;
-    static const size_t smallMax = 64 * kB;
+    static const size_t smallMax = 32 * kB;
 
     static const size_t pageSizeMax = smallMax * 2;
     static const size_t pageClassCount = pageSizeMax / smallPageSize;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to