[heap] MinorMC: Fix race when flushing back live bytes

NOTRY=true
TBR=hpayer@chromium.org

Bug: chromium:651354
Change-Id: Ibff438d987b07907b2c4463a42bef685864c1602
Reviewed-on: https://chromium-review.googlesource.com/513903
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45505}
This commit is contained in:
Michael Lippautz 2017-05-24 12:37:37 +02:00 committed by Commit Bot
parent 589a4d1df4
commit 2c5ca02724

View File

@ -2335,8 +2335,6 @@ class YoungGenerationMarkingTask : public ItemParallelJob::Task {
Page::kPageSize);
}
~YoungGenerationMarkingTask() { FlushLiveBytes(); }
void RunInParallel() override {
double marking_time = 0.0;
{
@ -2349,6 +2347,7 @@ class YoungGenerationMarkingTask : public ItemParallelJob::Task {
}
EmptyMarkingDeque();
DCHECK(marking_deque_.IsEmpty());
FlushLiveBytes();
}
if (FLAG_trace_minor_mc_parallel_marking) {
PrintIsolate(collector_->isolate(), "marking[%p]: time=%f\n",