Bug 320091

Summary: Rekonq crashes when loading twitter.com
Product: [Unmaintained] rekonq Reporter: Tim Taylor <tim.taylor+bugzilla.bugs.kde.org>
Component: generalAssignee: Andrea Diamantini <adjam7>
Status: RESOLVED UNMAINTAINED    
Severity: crash CC: tarpoon, thywalls, tim.taylor+bugzilla.bugs.kde.org
Priority: NOR    
Version First Reported In: 2.2.1   
Target Milestone: qtwebkitToFix   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description Tim Taylor 2013-05-21 12:08:41 UTC
Application: rekonq (2.2.1)
KDE Platform Version: 4.10.2
Qt Version: 4.8.4
Operating System: Linux 3.8.0-21-generic i686
Distribution: Ubuntu 13.04

-- Information about the crash:
- What I was doing when the application crashed:
Rekonq creashes every time I navigate to twitter.com or any other page on the Twitter site. I've not noticed it crashing on other sites (but I don't use Rekonq much, so I've not tested it extensively)

The crash can be reproduced every time.

-- Backtrace:
Application: rekonq (rekonq), signal: Segmentation fault
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0xb2323980 (LWP 2766))]

Thread 8 (Thread 0xafbf4b40 (LWP 2767)):
#0  0xb771f424 in __kernel_vsyscall ()
#1  0xb2cbe84b in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb7509d7c in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0xb6b3cae5 in WTF::TCMalloc_PageHeap::scavengerThread() () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#4  0xb6b3cb1f in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#5  0xb2cbad78 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#6  0xb74fc3de in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 7 (Thread 0xaf2d3b40 (LWP 2768)):
#0  0xb771f424 in __kernel_vsyscall ()
#1  0xb2cbe84b in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb7509d7c in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0xb6b6df63 in WTF::ThreadCondition::wait(WTF::Mutex&) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#4  0xb684cb1b in JSC::BlockAllocator::blockFreeingThreadMain() () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#5  0xb6b52982 in WTF::threadEntryPoint(void*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#6  0xb6b6db12 in WTF::wtfThreadEntryPoint(void*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#7  0xb2cbad78 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0xb74fc3de in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 6 (Thread 0xadfb0b40 (LWP 2769)):
#0  0xb2f9ca4a in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#1  0xb2f9cd28 in g_mutex_lock () from /lib/i386-linux-gnu/libglib-2.0.so.0
#2  0xb2f58d2b in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb2f595cf in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb2f59831 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb3799c3f in QEventDispatcherGlib::processEvents (this=0xad600468, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#6  0xb37663ec in QEventLoop::processEvents (this=this@entry=0xadfb0258, flags=...) at kernel/qeventloop.cpp:149
#7  0xb37666e1 in QEventLoop::exec (this=this@entry=0xadfb0258, flags=...) at kernel/qeventloop.cpp:204
#8  0xb3651fec in QThread::exec (this=this@entry=0x97d0660) at thread/qthread.cpp:542
#9  0xb365214b in QThread::run (this=0x97d0660) at thread/qthread.cpp:609
#10 0xb3654b18 in QThreadPrivate::start (arg=0x97d0660) at thread/qthread_unix.cpp:338
#11 0xb2cbad78 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#12 0xb74fc3de in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 5 (Thread 0xad2a8b40 (LWP 2771)):
#0  0xb771f424 in __kernel_vsyscall ()
#1  0xb750f8e2 in clock_gettime () from /lib/i386-linux-gnu/libc.so.6
#2  0xb36b30d5 in do_gettime (frac=0xad2a7f60, sec=0xad2a7f58) at tools/qelapsedtimer_unix.cpp:123
#3  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#4  0xb379a80e in QTimerInfoList::updateCurrentTime (this=this@entry=0xac902074) at kernel/qeventdispatcher_unix.cpp:354
#5  0xb379ab9a in QTimerInfoList::timerWait (this=0xac902074, tm=...) at kernel/qeventdispatcher_unix.cpp:461
#6  0xb3799373 in timerSourcePrepareHelper (src=<optimized out>, timeout=0xad2a808c) at kernel/qeventdispatcher_glib.cpp:136
#7  0xb379940d in timerSourcePrepare (source=0xac902040, timeout=0xad2a808c) at kernel/qeventdispatcher_glib.cpp:169
#8  0xb2f58d21 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#9  0xb2f595cf in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0xb2f59831 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#11 0xb3799c3f in QEventDispatcherGlib::processEvents (this=0xac900468, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#12 0xb37663ec in QEventLoop::processEvents (this=this@entry=0xad2a8228, flags=...) at kernel/qeventloop.cpp:149
#13 0xb37666e1 in QEventLoop::exec (this=this@entry=0xad2a8228, flags=...) at kernel/qeventloop.cpp:204
#14 0xb3651fec in QThread::exec (this=this@entry=0x984fad8) at thread/qthread.cpp:542
#15 0xb3745f2d in QInotifyFileSystemWatcherEngine::run (this=0x984fad8) at io/qfilesystemwatcher_inotify.cpp:256
#16 0xb3654b18 in QThreadPrivate::start (arg=0x984fad8) at thread/qthread_unix.cpp:338
#17 0xb2cbad78 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#18 0xb74fc3de in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 4 (Thread 0xaace5b40 (LWP 2800)):
#0  0xb771f424 in __kernel_vsyscall ()
#1  0xb2cbe84b in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb7509d7c in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0xaad06368 in queue_processor(void*) () from /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
#4  0xb2cbad78 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#5  0xb74fc3de in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 3 (Thread 0xaa4e4b40 (LWP 2801)):
#0  0xb771f424 in __kernel_vsyscall ()
#1  0xb2cbe84b in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb7509d7c in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0xaad06368 in queue_processor(void*) () from /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
#4  0xb2cbad78 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#5  0xb74fc3de in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 2 (Thread 0xa9ce3b40 (LWP 2802)):
#0  0xb771f424 in __kernel_vsyscall ()
#1  0xb2cbe84b in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb7509d7c in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0xaad06368 in queue_processor(void*) () from /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
#4  0xb2cbad78 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#5  0xb74fc3de in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 1 (Thread 0xb2323980 (LWP 2766)):
[KCrash Handler]
#7  0xb6b6d7b7 in WTF::OSAllocator::reserveAndCommit(unsigned int, WTF::OSAllocator::Usage, bool, bool, bool) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#8  0xb6b6d899 in WTF::OSAllocator::reserveUncommitted(unsigned int, WTF::OSAllocator::Usage, bool, bool, bool) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#9  0xb6b505c7 in WTF::PageAllocationAligned::allocate(unsigned int, unsigned int, WTF::OSAllocator::Usage, bool, bool) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#10 0xb68435e5 in JSC::CopiedSpace::tryAllocateOversize(unsigned int, void**) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#11 0xb68453e0 in JSC::CopiedSpace::tryAllocateSlowCase(unsigned int, void**) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#12 0xb6aa4549 in JSC::Butterfly::resizeArray(JSC::JSGlobalData&, unsigned int, bool, unsigned int, unsigned int, bool, unsigned int) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#13 0xb6a996f7 in JSC::JSObject::increaseVectorLength(JSC::JSGlobalData&, unsigned int) [clone .part.116] () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#14 0xb6a9ea9e in JSC::JSObject::putByIndexBeyondVectorLengthWithArrayStorage(JSC::ExecState*, unsigned int, JSC::JSValue, bool, JSC::ArrayStorage*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#15 0xb6aa1dd4 in JSC::JSObject::putByIndexBeyondVectorLength(JSC::ExecState*, unsigned int, JSC::JSValue, bool) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#16 0xb6aa20d0 in JSC::JSObject::putByIndex(JSC::JSCell*, JSC::ExecState*, unsigned int, JSC::JSValue, bool) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#17 0xb6a373ce in void JSC::unshift<(JSC::JSArray::ShiftCountMode)0>(JSC::ExecState*, JSC::JSObject*, unsigned int, unsigned int, unsigned int, unsigned int) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#18 0xb6a2cab0 in JSC::arrayProtoFuncUnShift(JSC::ExecState*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#19 0xaea09c8f in ?? ()
#20 0xb6937261 in JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#21 0xb6a38f5e in JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#22 0xb54cf563 in WebCore::JSEventListener::handleEvent(WebCore::ScriptExecutionContext*, WebCore::Event*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#23 0xb570b0b2 in WebCore::EventTarget::fireEventListeners(WebCore::Event*, WebCore::EventTargetData*, WTF::Vector<WebCore::RegisteredEventListener, 1u>&) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#24 0xb570b360 in WebCore::EventTarget::fireEventListeners(WebCore::Event*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#25 0xb572087f in WebCore::Node::handleLocalEvents(WebCore::Event*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#26 0xb57009b5 in WebCore::EventContext::handleLocalEvents(WebCore::Event*) const () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#27 0xb5703d40 in WebCore::EventDispatcher::dispatchEvent(WTF::PassRefPtr<WebCore::Event>) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#28 0xb5700e47 in WebCore::EventDispatchMediator::dispatchEvent(WebCore::EventDispatcher*) const () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#29 0xb57021d7 in WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WTF::PassRefPtr<WebCore::EventDispatchMediator>) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#30 0xb5725e37 in WebCore::Node::dispatchEvent(WTF::PassRefPtr<WebCore::Event>) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#31 0xb58c5482 in WebCore::HTMLScriptElement::dispatchLoadEvent() () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#32 0xb5747532 in WebCore::ScriptElement::execute(WebCore::CachedScript*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#33 0xb574efd1 in WebCore::ScriptRunner::timerFired(WebCore::Timer<WebCore::ScriptRunner>*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#34 0xb574ea25 in WebCore::Timer<WebCore::ScriptRunner>::fired() () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#35 0xb5c4f803 in WebCore::ThreadTimers::sharedTimerFiredInternal() () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#36 0xb5c4f885 in WebCore::ThreadTimers::sharedTimerFired() () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#37 0xb5ecf35e in WebCore::SharedTimerQt::timerEvent(QTimerEvent*) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#38 0xb37832d4 in QObject::event (this=0x97d25a0, e=0xbfaf5af0) at kernel/qobject.cpp:1156
#39 0xb3cdac7c in QApplicationPrivate::notify_helper (this=0x967aea8, receiver=0x97d25a0, e=0xbfaf5af0) at kernel/qapplication.cpp:4567
#40 0xb3cddb94 in QApplication::notify (this=0xbfaf5af0, receiver=0x97d25a0, e=0xbfaf5af0) at kernel/qapplication.cpp:3949
#41 0xb4fe5d01 in KApplication::notify (this=0xbfaf5e28, receiver=0x97d25a0, event=0xbfaf5af0) at ../../kdeui/kernel/kapplication.cpp:311
#42 0xb376790e in QCoreApplication::notifyInternal (this=0xbfaf5e28, receiver=0x97d25a0, event=event@entry=0xbfaf5af0) at kernel/qcoreapplication.cpp:946
#43 0xb379c8c0 in sendEvent (event=0xbfaf5af0, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#44 QTimerInfoList::activateTimers (this=this@entry=0x967e33c) at kernel/qeventdispatcher_unix.cpp:622
#45 0xb37995a8 in timerSourceDispatch (source=0x967e308) at kernel/qeventdispatcher_glib.cpp:186
#46 timerSourceDispatch (source=0x967e308) at kernel/qeventdispatcher_glib.cpp:180
#47 0xb2f593b3 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#48 0xb2f59750 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#49 0xb2f59831 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#50 0xb3799c21 in QEventDispatcherGlib::processEvents (this=this@entry=0x9647ed8, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#51 0xb3d91a5a in QGuiEventDispatcherGlib::processEvents (this=0x9647ed8, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#52 0xb37663ec in QEventLoop::processEvents (this=this@entry=0xbfaf5d58, flags=...) at kernel/qeventloop.cpp:149
#53 0xb37666e1 in QEventLoop::exec (this=this@entry=0xbfaf5d58, flags=...) at kernel/qeventloop.cpp:204
#54 0xb376c3fa in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1218
#55 0xb3cd8fc4 in QApplication::exec () at kernel/qapplication.cpp:3828
#56 0xb76dd725 in kdemain (argc=1, argv=0xbfaf5f14) at /build/buildd/rekonq-2.2.1/src/main.cpp:240
#57 0x0804854b in main (argc=1, argv=0xbfaf5f14) at /build/buildd/rekonq-2.2.1/obj-i686-linux-gnu/src/rekonq_dummy.cpp:3

Reported using DrKonqi
Comment 1 Lukas ThyWalls 2013-06-21 11:38:13 UTC
Created attachment 80683 [details]
New crash information added by DrKonqi

rekonq (2.2.1) on KDE Platform 4.10.3 using Qt 4.8.4

- What I was doing when the application crashed:

Rekonq is loading the timeline page of twitter.com, and it doesn't load completely when it freezes.

- Unusual behavior I noticed:

The computer use intensively the CPU until rekonq was killed.

- Other information:

It's the only page i tested with the problem. I test Gmail, GCalendar, and i will test other pages if i found another with the same problem.

-- Backtrace (Reduced):
#7  0xb6bc07b7 in WTF::OSAllocator::reserveAndCommit(unsigned int, WTF::OSAllocator::Usage, bool, bool, bool) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#8  0xb6bc0899 in WTF::OSAllocator::reserveUncommitted(unsigned int, WTF::OSAllocator::Usage, bool, bool, bool) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#9  0xb6ba35c7 in WTF::PageAllocationAligned::allocate(unsigned int, unsigned int, WTF::OSAllocator::Usage, bool, bool) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#10 0xb68965e5 in JSC::CopiedSpace::tryAllocateOversize(unsigned int, void**) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
#11 0xb68983e0 in JSC::CopiedSpace::tryAllocateSlowCase(unsigned int, void**) () from /usr/lib/i386-linux-gnu/libQtWebKit.so.4
Comment 2 Lukas ThyWalls 2013-06-22 19:52:59 UTC
Other behaivours detected:

In Gmail have random freeze of the same manner. Sometimes when i click a mail to view it, other when i delete one once i have been viewing it.
One problem is it's freeze for a minute or two, using extensively the CPU and making the PC unusable, when rekonq stops and dissappears i haven't any bug report most of the times (Only once is the twitter.com report)

Maybe related or duplicated of https://bugs.kde.org/show_bug.cgi?id=319221 or/and https://bugs.kde.org/show_bug.cgi?id=320874
Comment 3 tarpoon 2013-08-28 17:11:21 UTC
I can confirm this happening on my netbook with rekonq 2.2.x as well. 
After upgrade to 2.3.2 via kubuntu backports ppa it does not automatically crash anymore but becomes incredible slow and unresponsive with high hdd usage.
Comment 4 Lukas ThyWalls 2013-08-29 13:45:42 UTC
I think is something in relation with the engine Webkit because with Chromium i have problems too with twitter and gmail, exactly the same two pages i have problems with rekonq. With Chromium the pages crash but i can continue in them, in Rekonq, it hangs until it closes itself.

But with Chrome or Safari i suppose they haven't the problem...
Comment 5 tarpoon 2013-09-04 11:31:01 UTC
As twitter made some changes to their side I retested the problem today on my large PC (Kubuntu 13.04 + backports ppa) with 8GB-RAM and my netbook (Kubuntu 13.04 + backports ppa) with 2GB-RAM.

On the large PC the problem was gone and rekonq took about 300MB-RAM. On the netbook the problem persists and rekonq takes up about 1.345MB-RAM.
Comment 6 Nate Graham 2018-05-11 16:31:08 UTC
Development on Rekonq ceased four years ago, and it has been unmaintained since then. KDE recommends using Falkon instead.