Bug 228709 - Plasma Workspace crashes after resume from suspend to RAM
Summary: Plasma Workspace crashes after resume from suspend to RAM
Status: RESOLVED DUPLICATE of bug 226439
Alias: None
Product: plasma4
Classification: Plasma
Component: widget-weather (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-02-27 07:10 UTC by Thilo-Alexander Ginkel
Modified: 2010-02-27 07:43 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thilo-Alexander Ginkel 2010-02-27 07:10:02 UTC
Application: plasma-desktop (0.3)
KDE Platform Version: 4.4.00 (KDE 4.4.0)
Qt Version: 4.6.1
Operating System: Linux 2.6.31-19-generic x86_64
Distribution: Ubuntu 9.10

-- Information about the crash:
From time to time (~ 50% probability) the Plasma Workspace crashes when I resume my PC that was previously suspended to RAM.

The crash can be reproduced some of the time.

 -- Backtrace:
Application: Plasma Workspace (kdeinit4), signal: Segmentation fault
The current source language is "auto; currently c".
[Current thread is 1 (Thread 0x7f2abfa697f0 (LWP 9654))]

Thread 5 (Thread 0x7f2a9b87e910 (LWP 11042)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007f2abdf516fb in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x21bd3f0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x21bd3f0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007f2ab44a2096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x21a2480, th=0x2abdda0) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007f2ab44a474b in ThreadWeaver::WorkingHardState::applyForWork (this=0x21bd4d0, th=0x2abdda0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007f2ab44a2bff in ThreadWeaver::ThreadRunHelper::run (this=0x7f2a9b87dfb0, parent=0x21a2480, th=0x2abdda0) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00007f2ab44a3058 in ThreadWeaver::Thread::run (this=0x2abdda0) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x00007f2abdf50745 in QThreadPrivate::start (arg=0x2abdda0) at thread/qthread_unix.cpp:248
#8  0x00007f2abdcc1a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#9  0x00007f2abca8680d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f2a997b1910 (LWP 11043)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007f2abdf516fb in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x21bd3f0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x21bd3f0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007f2ab44a2096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x21a2480, th=0x2746680) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007f2ab44a474b in ThreadWeaver::WorkingHardState::applyForWork (this=0x21bd4d0, th=0x2746680) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007f2ab44a2bff in ThreadWeaver::ThreadRunHelper::run (this=0x7f2a997b0fb0, parent=0x21a2480, th=0x2746680) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00007f2ab44a3058 in ThreadWeaver::Thread::run (this=0x2746680) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x00007f2abdf50745 in QThreadPrivate::start (arg=0x2746680) at thread/qthread_unix.cpp:248
#8  0x00007f2abdcc1a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#9  0x00007f2abca8680d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()
The current source language is "auto; currently asm".

Thread 3 (Thread 0x7f2a8fedb910 (LWP 11044)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007f2abdf516fb in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x21bd3f0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x21bd3f0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007f2ab44a2096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x21a2480, th=0x2a333b0) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007f2ab44a474b in ThreadWeaver::WorkingHardState::applyForWork (this=0x21bd4d0, th=0x2a333b0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007f2ab44a2bff in ThreadWeaver::ThreadRunHelper::run (this=0x7f2a8fedafb0, parent=0x21a2480, th=0x2a333b0) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00007f2ab44a3058 in ThreadWeaver::Thread::run (this=0x2a333b0) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x00007f2abdf50745 in QThreadPrivate::start (arg=0x2a333b0) at thread/qthread_unix.cpp:248
#8  0x00007f2abdcc1a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#9  0x00007f2abca8680d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f2a8f6da910 (LWP 11045)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007f2abdf516fb in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x21bd3f0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x21bd3f0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007f2ab44a2096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x21a2480, th=0x2d73a00) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007f2ab44a474b in ThreadWeaver::WorkingHardState::applyForWork (this=0x21bd4d0, th=0x2d73a00) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007f2ab44a2bff in ThreadWeaver::ThreadRunHelper::run (this=0x7f2a8f6d9fb0, parent=0x21a2480, th=0x2d73a00) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00007f2ab44a3058 in ThreadWeaver::Thread::run (this=0x2d73a00) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x00007f2abdf50745 in QThreadPrivate::start (arg=0x2d73a00) at thread/qthread_unix.cpp:248
#8  0x00007f2abdcc1a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#9  0x00007f2abca8680d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f2abfa697f0 (LWP 9654)):
[KCrash Handler]
#5  qDeleteAll<QVector<WeatherData::ForecastInfo*> > (this=0x276af90, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:330
#6  ~ForecastPeriod (this=0x276af90, __in_chrg=<value optimized out>) at ../../../../../../../plasma/generic/dataengines/weather/ions/wetter.com/ion_wettercom.cpp:737
#7  0x00007f2a997bba4e in qDeleteAll<WeatherData::ForecastPeriod* const*> (this=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:322
#8  qDeleteAll<QVector<WeatherData::ForecastPeriod*> > (this=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:330
#9  WetterComIon::cleanup (this=<value optimized out>) at ../../../../../../../plasma/generic/dataengines/weather/ions/wetter.com/ion_wettercom.cpp:56
#10 0x00007f2a997bbb09 in WetterComIon::reset (this=0x276af90) at ../../../../../../../plasma/generic/dataengines/weather/ions/wetter.com/ion_wettercom.cpp:62
#11 0x00007f2a99bd3b73 in WeatherEngine::triggerReset (this=<value optimized out>) at ../../../../../plasma/generic/dataengines/weather/weatherengine.cpp:275
#12 0x00007f2a99bd5bf0 in WeatherEngine::qt_metacall (this=0x26cd2d0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff90ae3560) at ./weatherengine.moc:93
#13 0x00007f2abe057d3f in QMetaObject::activate (sender=0x2deb350, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x26b53ec) at kernel/qobject.cpp:3275
#14 0x00007f2abe05f49f in QSingleShotTimer::timerEvent (this=0x2deb350) at kernel/qtimer.cpp:308
#15 0x00007f2abe054993 in QObject::event (this=0x2deb350, e=0x7fff90ae3cc0) at kernel/qobject.cpp:1212
#16 0x00007f2abd1e3fac in QApplicationPrivate::notify_helper (this=0x18e6460, receiver=0x2deb350, e=0x7fff90ae3cc0) at kernel/qapplication.cpp:4298
#17 0x00007f2abd1ea59b in QApplication::notify (this=0x18d04d0, receiver=0x2deb350, e=0x7fff90ae3cc0) at kernel/qapplication.cpp:4181
#18 0x00007f2abe58cd16 in KApplication::notify (this=0x18d04d0, receiver=0x2deb350, event=0x7fff90ae3cc0) at ../../kdeui/kernel/kapplication.cpp:302
#19 0x00007f2abe044f3c in QCoreApplication::notifyInternal (this=0x18d04d0, receiver=0x2deb350, event=0x7fff90ae3cc0) at kernel/qcoreapplication.cpp:704
#20 0x00007f2abe071b92 in QCoreApplication::sendEvent (this=0x18e9990) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#21 QTimerInfoList::activateTimers (this=0x18e9990) at kernel/qeventdispatcher_unix.cpp:603
#22 0x00007f2abe06e798 in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:184
#23 idleTimerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:231
#24 0x00007f2ab9253bce in g_main_dispatch (context=0x18e8cb0) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:1960
#25 IA__g_main_context_dispatch (context=0x18e8cb0) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2513
#26 0x00007f2ab9257598 in g_main_context_iterate (context=0x18e8cb0, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>)
    at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2591
#27 0x00007f2ab92576c0 in IA__g_main_context_iteration (context=0x18e8cb0, may_block=1) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2654
#28 0x00007f2abe06e463 in QEventDispatcherGlib::processEvents (this=0x185b7f0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#29 0x00007f2abd2937ee in QGuiEventDispatcherGlib::processEvents (this=0x276af90, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#30 0x00007f2abe043862 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#31 0x00007f2abe043c3c in QEventLoop::exec (this=0x7fff90ae3f60, flags=) at kernel/qeventloop.cpp:201
#32 0x00007f2abe04797b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#33 0x00007f2ab18e40a2 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at ../../../../plasma/desktop/shell/main.cpp:112
#34 0x0000000000406fb8 in launch (argc=1, _name=<value optimized out>, args=<value optimized out>, cwd=<value optimized out>, envc=0, envs=<value optimized out>, reset_env=false, tty=0x0, 
    avoid_loops=false, startup_id_str=0x40a499 "0") at ../../kinit/kinit.cpp:717
#35 0x0000000000407c70 in handle_launcher_request (sock=9, who=<value optimized out>) at ../../kinit/kinit.cpp:1209
#36 0x0000000000408121 in handle_requests (waitForPid=0) at ../../kinit/kinit.cpp:1402
#37 0x0000000000408df2 in main (argc=4, argv=<value optimized out>, envp=<value optimized out>) at ../../kinit/kinit.cpp:1841
The current source language is "auto; currently c".

Reported using DrKonqi
Comment 1 Thilo-Alexander Ginkel 2010-02-27 07:22:19 UTC
Oops... Just noticed that it's the wetter.com ion that crashes...
Comment 2 Ryan Rix 2010-02-27 07:32:58 UTC
This is a bug in the Weather data engine. It is fixed in the upcoming KDE  SC 4.4.1 release. I will mark this bug as a duplicate of the closed bug... soon as I find it :)
Comment 3 Ryan Rix 2010-02-27 07:35:28 UTC
Ah, it looks like you wrote that code :^)
Comment 4 Thilo-Alexander Ginkel 2010-02-27 07:42:03 UTC
Yep, that why I was slightly puzzled when I found it to be crahsing in "my" code ;-)

Found the original bug report, so I will mark this as a duplicate.

*** This bug has been marked as a duplicate of bug 226439 ***
Comment 5 Ryan Rix 2010-02-27 07:43:51 UTC
Thanks, I'm not so good at traiging tonight, it seems! :)