Title: [167554] trunk/Source/bmalloc
- Revision
- 167554
- Author
- [email protected]
- Date
- 2014-04-19 16:02:09 -0700 (Sat, 19 Apr 2014)
Log Message
bmalloc: Improved alignment in LargeChunk
https://bugs.webkit.org/show_bug.cgi?id=131895
Reviewed by Andreas Kling.
* bmalloc/Chunk.h:
* bmalloc/LargeChunk.h: Align to vmPageSize just like Chunk does.
Technically, the previous alignment was harmless, but I would prefer,
dear reader, not to have to explain the interlocking set of
circumstances that made it so.
Modified Paths
Diff
Modified: trunk/Source/bmalloc/ChangeLog (167553 => 167554)
--- trunk/Source/bmalloc/ChangeLog 2014-04-19 22:26:59 UTC (rev 167553)
+++ trunk/Source/bmalloc/ChangeLog 2014-04-19 23:02:09 UTC (rev 167554)
@@ -1,5 +1,18 @@
2014-04-19 Geoffrey Garen <[email protected]>
+ bmalloc: Improved alignment in LargeChunk
+ https://bugs.webkit.org/show_bug.cgi?id=131895
+
+ Reviewed by Andreas Kling.
+
+ * bmalloc/Chunk.h:
+ * bmalloc/LargeChunk.h: Align to vmPageSize just like Chunk does.
+ Technically, the previous alignment was harmless, but I would prefer,
+ dear reader, not to have to explain the interlocking set of
+ circumstances that made it so.
+
+2014-04-19 Geoffrey Garen <[email protected]>
+
Rolled out r167502 because it caused a crash on the facebook benchmark.
Unreviewed.
Modified: trunk/Source/bmalloc/bmalloc/Chunk.h (167553 => 167554)
--- trunk/Source/bmalloc/bmalloc/Chunk.h 2014-04-19 22:26:59 UTC (rev 167553)
+++ trunk/Source/bmalloc/bmalloc/Chunk.h 2014-04-19 23:02:09 UTC (rev 167554)
@@ -62,8 +62,8 @@
Page m_pages[pageCount];
// Align to vmPageSize to avoid sharing physical pages with metadata.
- // Otherwise, we'll confuse the scavenger into scavenging metadata.
- alignas(vmPageSize) char m_memory[];
+ // Otherwise, we'll confuse the scavenger into trying to scavenge metadata.
+ alignas(vmPageSize) char m_memory[];
};
template<class Traits>
Modified: trunk/Source/bmalloc/bmalloc/LargeChunk.h (167553 => 167554)
--- trunk/Source/bmalloc/bmalloc/LargeChunk.h 2014-04-19 22:26:59 UTC (rev 167553)
+++ trunk/Source/bmalloc/bmalloc/LargeChunk.h 2014-04-19 23:02:09 UTC (rev 167554)
@@ -64,7 +64,10 @@
// We use the X's for boundary tags and the O's for edge sentinels.
BoundaryTag m_boundaryTags[boundaryTagCount];
- alignas(largeAlignment) char m_memory[];
+
+ // Align to vmPageSize to avoid sharing physical pages with metadata.
+ // Otherwise, we'll confuse the scavenger into trying to scavenge metadata.
+ alignas(vmPageSize) char m_memory[];
};
inline LargeChunk* LargeChunk::create()
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes