Revert "Reland "[heap] Move start of incremental marking in allocation""
This reverts commitfc48a2283c
. Reason for revert: fails tsan: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20TSAN%20-%20concurrent%20marking/13871 Original change's description: > Reland "[heap] Move start of incremental marking in allocation" > > This is a reland ofd6a14abe05
> > Test wasn't written with incremental/concurrent marking in mind, so > simply disabling it for this particular unittest. > > Original change's description: > > [heap] Move start of incremental marking in allocation > > > > Move start of incremental marking out of > > RefillLinearAllocationAreaFromFreeList. This avoids a potential > > safepoint while holding allocation_mutex_. > > > > Bug: v8:10315 > > Change-Id: Ieb60ac68f26199eea7b6b7ad6d874851382f3d69 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2287496 > > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#68751} > > Bug: v8:10315 > Change-Id: I2a665400d9a784b1557474a051839d5c8b45e9e2 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2292241 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68818} TBR=ulan@chromium.org,dinfuehr@chromium.org Change-Id: I9063a942c050b79cd3b66226dc25651ccf9fa60a No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10315 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2295361 Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#68826}
This commit is contained in:
parent
d81f7c6e16
commit
c399fdc5fb
@ -529,6 +529,12 @@ bool PagedSpace::RefillLinearAllocationAreaFromFreeList(
|
||||
// if it is big enough.
|
||||
FreeLinearAllocationArea();
|
||||
|
||||
if (!is_local_space()) {
|
||||
heap()->StartIncrementalMarkingIfAllocationLimitIsReached(
|
||||
heap()->GCFlagsForIncrementalMarking(),
|
||||
kGCCallbackScheduleIdleGarbageCollection);
|
||||
}
|
||||
|
||||
size_t new_node_size = 0;
|
||||
FreeSpace new_node =
|
||||
free_list_->Allocate(size_in_bytes, &new_node_size, origin);
|
||||
@ -1014,15 +1020,6 @@ AllocationResult PagedSpace::AllocateRawSlow(int size_in_bytes,
|
||||
top_on_previous_step_ ? top() - top_on_previous_step_ : 0;
|
||||
DCHECK_IMPLIES(!SupportsInlineAllocation(), bytes_since_last == 0);
|
||||
|
||||
if (!is_local_space()) {
|
||||
// Start incremental marking before the actual allocation, this allows the
|
||||
// allocation function to mark the object black when incremental marking is
|
||||
// running.
|
||||
heap()->StartIncrementalMarkingIfAllocationLimitIsReached(
|
||||
heap()->GCFlagsForIncrementalMarking(),
|
||||
kGCCallbackScheduleIdleGarbageCollection);
|
||||
}
|
||||
|
||||
#ifdef V8_HOST_ARCH_32_BIT
|
||||
AllocationResult result =
|
||||
alignment != kWordAligned
|
||||
|
@ -130,7 +130,6 @@ TEST(ExternalString_ExternalBackingStoreSizeIncreasesMarkCompact) {
|
||||
}
|
||||
|
||||
TEST(ExternalString_ExternalBackingStoreSizeIncreasesAfterExternalization) {
|
||||
ManualGCScope manual_gc_scope;
|
||||
CcTest::InitializeVM();
|
||||
LocalContext env;
|
||||
v8::Isolate* isolate = env->GetIsolate();
|
||||
|
@ -726,7 +726,6 @@ TEST_F(RuntimeCallStatsTest, CallbackFunction) {
|
||||
|
||||
TEST_F(RuntimeCallStatsTest, ApiGetter) {
|
||||
FLAG_allow_natives_syntax = true;
|
||||
FLAG_incremental_marking = false;
|
||||
|
||||
RuntimeCallCounter* callback_counter =
|
||||
stats()->GetCounter(RuntimeCallCounterId::kFunctionCallback);
|
||||
|
Loading…
Reference in New Issue
Block a user