| Index: src/heap/concurrent-marking.cc
|
| diff --git a/src/heap/concurrent-marking.cc b/src/heap/concurrent-marking.cc
|
| index 85cee07943148993287d1535fc4b9ec113efa53a..099715759a7e91e5886af2b923e2a55b23a6eda2 100644
|
| --- a/src/heap/concurrent-marking.cc
|
| +++ b/src/heap/concurrent-marking.cc
|
| @@ -185,10 +185,12 @@ ConcurrentMarking::~ConcurrentMarking() { delete visitor_; }
|
| void ConcurrentMarking::Run() {
|
| double time_ms = heap_->MonotonicallyIncreasingTimeInMs();
|
| size_t bytes_marked = 0;
|
| + base::Mutex* relocation_mutex = heap_->relocation_mutex();
|
| {
|
| TimedScope scope(&time_ms);
|
| HeapObject* object;
|
| while ((object = deque_->Pop(MarkingThread::kConcurrent)) != nullptr) {
|
| + base::LockGuard<base::Mutex> guard(relocation_mutex);
|
| bytes_marked += visitor_->Visit(object);
|
| }
|
| }
|
|
|