Status: Accepted
Owner: [email protected]
Labels: Type-Bug Priority-High NewGC
New issue 1715 by [email protected]: Pending context disposals at
end of idle notification.
http://code.google.com/p/v8/issues/detail?id=1715
This assertion triggers with Chromium and recent bleeding edge in debug
mode on some pages (e.g. http://www.slideshare.net/). The incremental
marker is in the sweeping phase.
(gdb) bt
#0 0x00007fffe9b9ea75 in raise (sig=<value optimized out>)
at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x00007fffe9ba25c0 in abort () at abort.c:92
#2 0x00007ffff306367b in v8::internal::OS::Abort () at
v8/src/platform-linux.cc:418
#3 0x00007ffff2d56965 in V8_Fatal (file=0x7ffff5d6b12a "v8/src/heap.cc",
line=4475,
format=0x7ffff5d68aa0 "CHECK(%s) failed") at v8/src/checks.cc:58
#4 0x00007ffff2db2d04 in CheckHelper
(file=0x7ffff5d6b12a "v8/src/heap.cc", line=4475,
source=0x7ffff5d6c350 "(contexts_disposed_ == 0) ||
incremental_marking()->IsMarking()", condition=false)
at v8/src/checks.h:60
#5 0x00007ffff2dbfa1d in v8::internal::Heap::IdleNotification
(this=0x7ffff0adc0a8) at v8/src/heap.cc:4475
#6 0x00007ffff2f956e9 in v8::internal::V8::IdleNotification () at
v8/src/v8.cc:165
#7 0x00007ffff2d20466 in v8::V8::IdleNotification () at v8/src/api.cc:3995
#8 0x00007ffff38b5e17 in
WebCore::V8GCForContextDispose::pseudoIdleTimerFired (this=0x7fffddf457c0)
at
third_party/WebKit/Source/WebCore/bindings/v8/V8GCForContextDispose.cpp:69
#9 0x00007ffff38b5f5c in
WebCore::Timer<WebCore::V8GCForContextDispose>::fired (this=0x7fffddf457c0)
at third_party/WebKit/Source/WebCore/platform/Timer.h:100
#10 0x00007ffff373d45c in WebCore::ThreadTimers::sharedTimerFiredInternal
(this=0x7fffd77e8a80)
at third_party/WebKit/Source/WebCore/platform/ThreadTimers.cpp:115
#11 0x00007ffff373d393 in WebCore::ThreadTimers::sharedTimerFired ()
at third_party/WebKit/Source/WebCore/platform/ThreadTimers.cpp:93
#12 0x00007ffff448441e in webkit_glue::WebKitPlatformSupportImpl::DoTimeout
(this=0x7fffdb0b2280)
at ./webkit/glue/webkitplatformsupport_impl.h:88
#13 0x00007ffff4484af3 in
DispatchToMethod<webkit_glue::WebKitPlatformSupportImpl, void
(webkit_glue::WebKitPlatformSupportImpl::*)()> (obj=0x7fffdb0b2280, method=
(void
(webkit_glue::WebKitPlatformSupportImpl::*)(webkit_glue::WebKitPlatformSupportImpl
*)) 0x7ffff44843f0 <webkit_glue::WebKitPlatformSupportImpl::DoTimeout()>,
arg=...) at ./base/tuple.h:541
#14 0x00007ffff4484a26 in
base::BaseTimer<webkit_glue::WebKitPlatformSupportImpl,
false>::TimerTask::Run (
this=0x7fffd238ea10) at ./base/timer.h:172
#15 0x00007ffff267ef5b in base::subtle::TaskClosureAdapter::Run
(this=0x7fffd2654c60) at base/task.cc:56
#16 0x00007ffff263b406 in base::internal::Invoker1<false,
base::internal::InvokerStorage1<void
(base::subtle::TaskClosureAdapter::*)(),
base::subtle::TaskClosureAdapter*>, void
(base::subtle::TaskClosureAdapter::*)()>::DoInvoke (
base=0x7fffde8f45d0) at ./base/bind_internal.h:595
#17 0x00007ffff2294845 in base::Callback<void()>::Run(void) const
(this=0x7fffd94c4550) at ./base/callback.h:269
#18 0x00007ffff26384e1 in MessageLoop::RunTask (this=0x7fffd94c4b80,
pending_task=...) at base/message_loop.cc:476
#19 0x00007ffff26385e9 in MessageLoop::DeferOrRunPendingTask
(this=0x7fffd94c4b80, pending_task=...)
at base/message_loop.cc:492
#20 0x00007ffff2638dff in MessageLoop::DoWork (this=0x7fffd94c4b80) at
base/message_loop.cc:682
#21 0x00007ffff2640854 in base::MessagePumpDefault::Run
(this=0x7fffdb0913e0, delegate=0x7fffd94c4b80)
at base/message_pump_default.cc:23
#22 0x00007ffff26382d5 in MessageLoop::RunInternal (this=0x7fffd94c4b80) at
base/message_loop.cc:443
#23 0x00007ffff2638188 in MessageLoop::RunHandler (this=0x7fffd94c4b80) at
base/message_loop.cc:416
#24 0x00007ffff2637ba3 in MessageLoop::Run (this=0x7fffd94c4b80) at
base/message_loop.cc:340
#25 0x00007ffff26813aa in base::Thread::Run (this=0x7fffdb08d050,
message_loop=0x7fffd94c4b80)
at base/threading/thread.cc:128
#26 0x00007ffff268152a in base::Thread::ThreadMain (this=0x7fffdb08d050) at
base/threading/thread.cc:163
#27 0x00007ffff268083f in base::(anonymous namespace)::ThreadFunc
(params=0x7fffdb16ccd0)
at base/threading/platform_thread_posix.cc:58
#28 0x00007fffec4639ca in start_thread (arg=<value optimized out>) at
pthread_create.c:300
#29 0x00007fffe9c5170d in clone ()
at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#30 0x0000000000000000 in ?? ()
(gdb) f 5
#5 0x00007ffff2dbfa1d in v8::internal::Heap::IdleNotification
(this=0x7ffff0adc0a8) at v8/src/heap.cc:4475
4475 ASSERT((contexts_disposed_ == 0) ||
incremental_marking()->IsMarking());
(gdb) p contexts_disposed_
$1 = 11
(gdb) p incremental_marking_->state_
$2 = v8::internal::IncrementalMarking::SWEEPING
(gdb) p number_idle_notifications_
$3 = 0
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev