Title: [198693] trunk/Source/bmalloc
- Revision
- 198693
- Author
- [email protected]
- Date
- 2016-03-25 15:04:53 -0700 (Fri, 25 Mar 2016)
Log Message
2016-03-25 Geoffrey Garen <[email protected]>
Unreviewed, try to fix a crash seen on the bots.
* bmalloc/Allocator.cpp:
(bmalloc::Allocator::reallocate): We have to take the lock even if we're
only reading our own data becuse LargeObject contains validation code
that will read our neighbors' data as well.
Modified Paths
Diff
Modified: trunk/Source/bmalloc/ChangeLog (198692 => 198693)
--- trunk/Source/bmalloc/ChangeLog 2016-03-25 22:01:30 UTC (rev 198692)
+++ trunk/Source/bmalloc/ChangeLog 2016-03-25 22:04:53 UTC (rev 198693)
@@ -1,3 +1,12 @@
+2016-03-25 Geoffrey Garen <[email protected]>
+
+ Unreviewed, try to fix a crash seen on the bots.
+
+ * bmalloc/Allocator.cpp:
+ (bmalloc::Allocator::reallocate): We have to take the lock even if we're
+ only reading our own data becuse LargeObject contains validation code
+ that will read our neighbors' data as well.
+
2016-03-25 Ryan Haddad <[email protected]>
Unreviewed, rolling out r198679.
Modified: trunk/Source/bmalloc/bmalloc/Allocator.cpp (198692 => 198693)
--- trunk/Source/bmalloc/bmalloc/Allocator.cpp 2016-03-25 22:01:30 UTC (rev 198692)
+++ trunk/Source/bmalloc/bmalloc/Allocator.cpp 2016-03-25 22:04:53 UTC (rev 198693)
@@ -120,12 +120,13 @@
break;
}
case ObjectType::Large: {
+ std::lock_guard<StaticMutex> lock(PerProcess<Heap>::mutex());
+
LargeObject largeObject(object);
oldSize = largeObject.size();
if (newSize < oldSize && newSize > smallMax) {
if (oldSize - newSize >= largeMin) {
- std::lock_guard<StaticMutex> lock(PerProcess<Heap>::mutex());
newSize = roundUpToMultipleOf<largeAlignment>(newSize);
PerProcess<Heap>::getFastCase()->shrinkLarge(lock, largeObject, newSize);
return object;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes