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

Reply via email to