Bug 261646 - Plasma crashes when having multiple desktops
Summary: Plasma crashes when having multiple desktops
Status: RESOLVED FIXED
Alias: None
Product: plasma4
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
: 261157 262217 262440 263680 264288 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-12-30 18:49 UTC by Kai Uwe Broulik
Modified: 2011-01-25 22:15 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In: 4.6.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Kai Uwe Broulik 2010-12-30 18:49:11 UTC
Application: plasma-desktop (0.4)
KDE Platform Version: 4.5.90 (4.6 RC1)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-24-generic-pae i686
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:
I applied the screen configuration to have my internal notebook display LVDS left of the external beamer VGA1 output, then plasma instantly crashed triggering Dr. Konqui. It does not happen with Plasma containments that are not multimonitor capable, i.e. Plasma-Notebook. It works just fine because it is only displayed on one monitor. Also, having "Clone of VGA" as setting works but whenever multi monitoring is evolved, it crashes instantly.
At my home desktop (nVidia Geforce GTS 250) with two monitors at DVI-0 and DVI-1 everything works perfectly. On that notebook with Intel Graphics Accelerator it crashes.
- Custom settings of the application:
Three activities, one active, multi monitor configuration using a notebook and attached beamer.

The crash can be reproduced every time.

-- Backtrace:
Application: Plasma-Desktop-Umgebung (plasma-desktop), signal: Segmentation fault
[Current thread is 1 (Thread 0xb2764940 (LWP 2377))]

Thread 4 (Thread 0xafaf4b70 (LWP 2378)):
#0  0xb7744424 in __kernel_vsyscall ()
#1  0xb7623df6 in poll () from /lib/libc.so.6
#2  0xb3612a1b in g_poll () from /lib/libglib-2.0.so.0
#3  0xb360543c in ?? () from /lib/libglib-2.0.so.0
#4  0xb3605848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#5  0xb658a59f in QEventDispatcherGlib::processEvents (this=0xa0887c8, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#6  0xb655a609 in QEventLoop::processEvents (this=0xafaf4280, flags=) at kernel/qeventloop.cpp:149
#7  0xb655aa8a in QEventLoop::exec (this=0xafaf4280, flags=...) at kernel/qeventloop.cpp:201
#8  0xb6456b7e in QThread::exec (this=0xa086cf0) at thread/qthread.cpp:490
#9  0xb653935b in QInotifyFileSystemWatcherEngine::run (this=0xa086cf0) at io/qfilesystemwatcher_inotify.cpp:248
#10 0xb6459df9 in QThreadPrivate::start (arg=0xa086cf0) at thread/qthread_unix.cpp:266
#11 0xb36a7cc9 in start_thread () from /lib/libpthread.so.0
#12 0xb763269e in clone () from /lib/libc.so.6

Thread 3 (Thread 0xaf2f3b70 (LWP 2379)):
#0  0xb36ab898 in pthread_mutex_unlock () from /lib/libpthread.so.0
#1  0xb763ffa6 in pthread_mutex_unlock () from /lib/libc.so.6
#2  0xb3604e58 in g_main_context_prepare () from /lib/libglib-2.0.so.0
#3  0xb3605279 in ?? () from /lib/libglib-2.0.so.0
#4  0xb3605848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#5  0xb658a59f in QEventDispatcherGlib::processEvents (this=0x9fc9388, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#6  0xb655a609 in QEventLoop::processEvents (this=0xaf2f32a0, flags=) at kernel/qeventloop.cpp:149
#7  0xb655aa8a in QEventLoop::exec (this=0xaf2f32a0, flags=...) at kernel/qeventloop.cpp:201
#8  0xb6456b7e in QThread::exec (this=0xa0a2a98) at thread/qthread.cpp:490
#9  0xb2f7b171 in Herqq::Upnp::HControlPointThread::run() () from /usr/lib/libHUpnp.so.0
#10 0xb6459df9 in QThreadPrivate::start (arg=0xa0a2a98) at thread/qthread_unix.cpp:266
#11 0xb36a7cc9 in start_thread () from /lib/libpthread.so.0
#12 0xb763269e in clone () from /lib/libc.so.6

Thread 2 (Thread 0xa7695b70 (LWP 2382)):
#0  0xb7744424 in __kernel_vsyscall ()
#1  0xb7623df6 in poll () from /lib/libc.so.6
#2  0xb3612a1b in g_poll () from /lib/libglib-2.0.so.0
#3  0xb360543c in ?? () from /lib/libglib-2.0.so.0
#4  0xb3605848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#5  0xb658a59f in QEventDispatcherGlib::processEvents (this=0xa360e28, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#6  0xb655a609 in QEventLoop::processEvents (this=0xa7695280, flags=) at kernel/qeventloop.cpp:149
#7  0xb655aa8a in QEventLoop::exec (this=0xa7695280, flags=...) at kernel/qeventloop.cpp:201
#8  0xb6456b7e in QThread::exec (this=0xa434dc0) at thread/qthread.cpp:490
#9  0xb653935b in QInotifyFileSystemWatcherEngine::run (this=0xa434dc0) at io/qfilesystemwatcher_inotify.cpp:248
#10 0xb6459df9 in QThreadPrivate::start (arg=0xa434dc0) at thread/qthread_unix.cpp:266
#11 0xb36a7cc9 in start_thread () from /lib/libpthread.so.0
#12 0xb763269e in clone () from /lib/libc.so.6

Thread 1 (Thread 0xb2764940 (LWP 2377)):
[KCrash Handler]
#7  0xb736d76f in Plasma::Containment::setScreen (this=0x0, newScreen=1, newDesktop=-1) at ../../plasma/containment.cpp:959
#8  0xb76ee97a in Activity::containmentForScreen (this=0x9f884a8, screen=1, desktop=-1) at ../../../../plasma/desktop/shell/activity.cpp:183
#9  0xb76f764a in DesktopCorona::checkDesktop (this=0x9c41f40, activity=0x9f884a8, signalWhenExists=true, screen=1, desktop=-1) at ../../../../plasma/desktop/shell/desktopcorona.cpp:226
#10 0xb76f99d3 in DesktopCorona::checkScreen (this=0x9c41f40, screen=1, signalWhenExists=<value optimized out>) at ../../../../plasma/desktop/shell/desktopcorona.cpp:205
#11 0xb76fa0b4 in DesktopCorona::screenAdded (this=0x9c41f40, s=0xacb0088) at ../../../../plasma/desktop/shell/desktopcorona.cpp:427
#12 0xb76fd0c7 in DesktopCorona::qt_metacall (this=0x9c41f40, _c=QMetaObject::InvokeMetaMethod, _id=51, _a=0xbf822778) at ./desktopcorona.moc:115
#13 0xb65618ca in QMetaObject::metacall (object=0x9c41f40, cl=3212977153, idx=51, argv=0xbf822778) at kernel/qmetaobject.cpp:237
#14 0xb65746ad in QMetaObject::activate (sender=0x9c72718, m=0xb6e1cd30, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3280
#15 0xb6e18fa3 in Kephal::Screens::screenAdded (this=0x9c72718, _t1=0xacb0088) at moc_screens.cpp:143
#16 0xb6e1a9a5 in Kephal::DesktopWidgetScreens::handleScreenCountChanged (this=0x9c72718, newCount=2) at ../../../../libs/kephal/kephal/desktopwidgetscreens.cpp:87
#17 0xb6e1914d in Kephal::DesktopWidgetScreens::qt_metacall (this=0x9c72718, _c=QMetaObject::InvokeMetaMethod, _id=8, _a=0xbf822948) at moc_desktopwidgetscreens.cpp:75
#18 0xb65618ca in QMetaObject::metacall (object=0x9c72718, cl=3212977153, idx=8, argv=0xbf822948) at kernel/qmetaobject.cpp:237
#19 0xb65746ad in QMetaObject::activate (sender=0x9c467f8, m=0xb63ea664, local_signal_index=2, argv=0x0) at kernel/qobject.cpp:3280
#20 0xb61c2823 in QDesktopWidget::screenCountChanged (this=0x9c467f8, _t1=2) at .moc/release-shared/moc_qdesktopwidget.cpp:140
#21 0xb5b04356 in QDesktopWidget::resizeEvent (this=0x9c467f8, event=0xbf822f98) at kernel/qdesktopwidget_x11.cpp:399
#22 0xb5ab8c53 in QWidget::event (this=0x9c467f8, event=0xbf822f98) at kernel/qwidget.cpp:8341
#23 0xb5a5afdc in QApplicationPrivate::notify_helper (this=0x9bc9958, receiver=0x9c467f8, e=0xbf822f98) at kernel/qapplication.cpp:4396
#24 0xb5a610e9 in QApplication::notify (this=0x9bbf4a0, receiver=0x9c467f8, e=0xbf822f98) at kernel/qapplication.cpp:4361
#25 0xb6bba2ca in KApplication::notify (this=0x9bbf4a0, receiver=0x9c467f8, event=0xbf822f98) at ../../kdeui/kernel/kapplication.cpp:311
#26 0xb655bb3b in QCoreApplication::notifyInternal (this=0x9bbf4a0, receiver=0x9c467f8, event=0xbf822f98) at kernel/qcoreapplication.cpp:732
#27 0xb5a696ce in QCoreApplication::sendEvent (receiver=0x9c467f8, event=0x0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#28 0xb5aecca0 in QApplication::x11ProcessEvent (this=0x9bbf4a0, event=0xbf82327c) at kernel/qapplication_x11.cpp:3348
#29 0xb5b1d36a in x11EventSourceDispatch (s=0x9bcbf10, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#30 0xb3601855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#31 0xb3605668 in ?? () from /lib/libglib-2.0.so.0
#32 0xb3605848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#33 0xb658a565 in QEventDispatcherGlib::processEvents (this=0x9b93510, flags=...) at kernel/qeventdispatcher_glib.cpp:415
#34 0xb5b1cbe5 in QGuiEventDispatcherGlib::processEvents (this=0x9b93510, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#35 0xb655a609 in QEventLoop::processEvents (this=0xbf823574, flags=) at kernel/qeventloop.cpp:149
#36 0xb655aa8a in QEventLoop::exec (this=0xbf823574, flags=...) at kernel/qeventloop.cpp:201
#37 0xb655f00f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#38 0xb5a59e07 in QApplication::exec () at kernel/qapplication.cpp:3672
#39 0xb7705f67 in kdemain (argc=1, argv=0xbf823784) at ../../../../plasma/desktop/shell/main.cpp:118
#40 0x080485bb in main (argc=1, argv=0xbf823784) at plasma-desktop_dummy.cpp:3

Possible duplicates by query: bug 261157.

Reported using DrKonqi
Comment 1 Dario Andres 2010-12-30 19:03:28 UTC
[Comment from a bug triager]
This is likely to be related to bug 261157; however as the code path is a bit different, may be it is better to leave both reports unmerged until the situation is analyzed. Hopefully a commit could fix both issues at the same time.
Regards
Comment 2 Kai Uwe Broulik 2011-01-02 19:28:20 UTC
It seems it occurs on one of my activities only. On my “At Work” activity, plasma always crashes when configuring it to use multiple screens. For New Year‘s eve party I created a new activity “Living room” for watching movies, having a countdown on the TV screen and it worked perfectly. I removed the “At Work” activity and created a new one and it seems not to crash anymore. I don‘t know what causes or caused this.
Comment 3 Marco Martin 2011-01-03 17:13:11 UTC
SVN commit 1211307 by mart:

addContainment(m_plugin); can still fail: check for it before setScreen
BUG:261646


 M  +2 -0      activity.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1211307
Comment 4 Nicolas L. 2011-01-05 22:54:07 UTC
*** Bug 261157 has been marked as a duplicate of this bug. ***
Comment 5 Nicolas L. 2011-01-05 22:54:13 UTC
*** Bug 262217 has been marked as a duplicate of this bug. ***
Comment 6 Dario Andres 2011-01-08 13:06:51 UTC
*** Bug 262440 has been marked as a duplicate of this bug. ***
Comment 7 Pino Toscano 2011-01-19 21:04:40 UTC
*** Bug 263680 has been marked as a duplicate of this bug. ***
Comment 8 Pino Toscano 2011-01-25 22:15:45 UTC
*** Bug 264288 has been marked as a duplicate of this bug. ***