Bug 259351

Summary: Plasma desktop crashes when switching off wlan
Product: Network Management Reporter: 3undzwanzig
Component: Plasma WidgetAssignee: Sebastian Kügler <sebas>
Status: RESOLVED FIXED    
Severity: crash CC: ghicksrn, jeppe, lamarque, wstephenson, zorael
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description 3undzwanzig 2010-12-09 17:42:12 UTC
Application: plasma-desktop (0.3)
KDE Platform Version: 4.4.2 (KDE 4.4.2)
Qt Version: 4.6.2
Operating System: Linux 2.6.32-26-generic i686
Distribution: Ubuntu 10.04.1 LTS

-- Information about the crash:
The title says it all. When I use the hardware switch to switch off the wlan (whilst being connected to a network) the desktop crashes. However, after a few seconds the desktop is restarted and all my windows are still there.

 -- Backtrace:
Application: Plasma-Arbeitsfläche (kdeinit4), signal: Segmentation fault
[Current thread is 1 (Thread 0xb78b6aa0 (LWP 2898))]

Thread 2 (Thread 0xa8fb9b70 (LWP 2900)):
#0  0x00dc2e16 in clock_gettime () from /lib/tls/i686/cmov/librt.so.1
#1  0x006ee6fb in qt_gettime () at kernel/qcore_unix.cpp:111
#2  0x006f3825 in QTimerInfoList::updateCurrentTime (this=0xa8c7c34) at kernel/qeventdispatcher_unix.cpp:340
#3  0x006f386a in QTimerInfoList::timerWait (this=0xa8c7c34, tm=...) at kernel/qeventdispatcher_unix.cpp:443
#4  0x006f1818 in timerSourcePrepareHelper (src=<value optimized out>, timeout=0xa8fb90cc) at kernel/qeventdispatcher_glib.cpp:136
#5  0x006f18a5 in timerSourcePrepare (source=0x0, timeout=0xdc6ff4) at kernel/qeventdispatcher_glib.cpp:169
#6  0x04db9aca in g_main_context_prepare () from /lib/libglib-2.0.so.0
#7  0x04db9ee9 in ?? () from /lib/libglib-2.0.so.0
#8  0x04dba4b8 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#9  0x006f160f in QEventDispatcherGlib::processEvents (this=0xa8d7388, flags=...) at kernel/qeventdispatcher_glib.cpp:414
#10 0x006c4059 in QEventLoop::processEvents (this=0xa8fb9290, flags=) at kernel/qeventloop.cpp:149
#11 0x006c44aa in QEventLoop::exec (this=0xa8fb9290, flags=...) at kernel/qeventloop.cpp:201
#12 0x005c05a8 in QThread::exec (this=0xa744728) at thread/qthread.cpp:487
#13 0x006a3c1b in QInotifyFileSystemWatcherEngine::run (this=0xa744728) at io/qfilesystemwatcher_inotify.cpp:248
#14 0x005c332e in QThreadPrivate::start (arg=0xa744728) at thread/qthread_unix.cpp:248
#15 0x0023996e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#16 0x00ce1a4e in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 1 (Thread 0xb78b6aa0 (LWP 2898)):
[KCrash Handler]
#6  QDBusAbstractInterface::d_func (this=0x0, method=..., args=...) at qdbusabstractinterface.h:154
#7  QDBusAbstractInterface::asyncCallWithArgumentList (this=0x0, method=..., args=...) at qdbusabstractinterface.cpp:464
#8  0x085c3cee in InterfaceConnectionInterface::activationState (this=0xb1449f0) at ./interfaceconnectioninterface.h:66
#9  RemoteInterfaceConnection::activationState (this=0xb1449f0) at ../../../libs/client/remoteinterfaceconnection.cpp:79
#10 0x0631e0a9 in InterfaceItem::currentConnection (this=0xab2b930) at ../../applet/interfaceitem.cpp:258
#11 0x06320d2f in WirelessInterfaceItem::setConnectionInfo (this=0xab2b930) at ../../applet/wirelessinterfaceitem.cpp:74
#12 0x06320cc4 in WirelessInterfaceItem::updateInfo (this=0xab2b930) at ../../applet/wirelessinterfaceitem.cpp:54
#13 0x063141e1 in WirelessInterfaceItem::qt_metacall (this=0xab2b930, _c=QMetaObject::InvokeMetaMethod, _id=45, _a=0xbfab7808) at moc_wirelessinterfaceitem.cpp:74
#14 0x006cac9a in QMetaObject::metacall (object=0xab2b930, cl=140304749, idx=45, argv=0xbfab7808) at kernel/qmetaobject.cpp:237
#15 0x006d93d5 in QMetaObject::activate (sender=0xab39470, m=0x632aa50, local_signal_index=0, argv=0xbfab7808) at kernel/qobject.cpp:3293
#16 0x06312fd3 in WirelessStatus::strengthChanged (this=0xab39470, _t1=0) at moc_wirelessstatus.cpp:94
#17 0x06325154 in WirelessStatus::setStrength (this=0xab39470, strength=-1079282176) at ../../applet/wirelessstatus.cpp:181
#18 0x063254e7 in WirelessStatus::accessPointDestroyed (this=0xab39470, ap=0xbfab7600) at ../../applet/wirelessstatus.cpp:215
#19 0x06313431 in WirelessStatus::qt_metacall (this=0xab39470, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0xbfab79c8) at moc_wirelessstatus.cpp:82
#20 0x006cac9a in QMetaObject::metacall (object=0xab39470, cl=140304749, idx=7, argv=0xbfab79c8) at kernel/qmetaobject.cpp:237
#21 0x006d93d5 in QMetaObject::activate (sender=0xadeda70, m=0x7d4250, local_signal_index=0, argv=0xbfab79c8) at kernel/qobject.cpp:3293
#22 0x006d97d3 in QObject::destroyed (this=0xadeda70, _t1=0xadeda70) at .moc/release-shared/moc_qobject.cpp:149
#23 0x006dbf9a in ~QObject (this=0xadeda70, __in_chrg=<value optimized out>) at kernel/qobject.cpp:869
#24 0x04425f9c in ~AccessPoint (this=0xadeda70, __in_chrg=<value optimized out>) at ../../../../libs/solid/control/wirelessaccesspoint.cpp:72
#25 0x0442795e in Solid::Control::WirelessNetworkInterface::_k_accessPointRemoved (this=0xa77d208, uni=...) at ../../../../libs/solid/control/wirelessnetworkinterface.cpp:163
#26 0x04427a2d in Solid::Control::WirelessNetworkInterface::qt_metacall (this=0xa77d208, _c=QMetaObject::InvokeMetaMethod, _id=14, _a=0xbfab7ba8) at ./wirelessnetworkinterface.moc:116
#27 0x006cac9a in QMetaObject::metacall (object=0xa77d208, cl=140304749, idx=14, argv=0xbfab7ba8) at kernel/qmetaobject.cpp:237
#28 0x006d93d5 in QMetaObject::activate (sender=0xa71d4d0, m=0x28dd5c8, local_signal_index=4, argv=0xbfab7ba8) at kernel/qobject.cpp:3293
#29 0x028c1a53 in NMWirelessNetworkInterface::accessPointDisappeared (this=0xa71d4d0, _t1=...) at moc_wirelessnetworkinterface.cpp:140
#30 0x028d0105 in NMWirelessNetworkInterface::accessPointRemoved (this=0xa71d4d0, apPath=...) at ../../../solid/networkmanager-0.7/wirelessnetworkinterface.cpp:188
#31 0x028c1c4d in NMWirelessNetworkInterface::qt_metacall (this=0xa71d4d0, _c=QMetaObject::InvokeMetaMethod, _id=15, _a=0xbfab7d48) at moc_wirelessnetworkinterface.cpp:100
#32 0x006cac9a in QMetaObject::metacall (object=0xa71d4d0, cl=140304749, idx=15, argv=0xbfab7d48) at kernel/qmetaobject.cpp:237
#33 0x006d93d5 in QMetaObject::activate (sender=0xa6cc548, m=0x28dec04, local_signal_index=1, argv=0xbfab7d48) at kernel/qobject.cpp:3293
#34 0x028d6793 in OrgFreedesktopNetworkManagerDeviceWirelessInterface::AccessPointRemoved (this=0xa6cc548, _t1=...) at ./nm-device-wifiinterface.moc:141
#35 0x028d6a1d in OrgFreedesktopNetworkManagerDeviceWirelessInterface::qt_metacall (this=0xa6cc548, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0xbfab7f1c) at ./nm-device-wifiinterface.moc:92
#36 0x0026db34 in QDBusConnectionPrivate::deliverCall (this=0x9feeba0, object=0xa6cc548, msg=..., metaTypes=..., slotIdx=6) at qdbusintegrator.cpp:904
#37 0x00278ea7 in QDBusCallDeliveryEvent::placeMetaCall (this=0xb66b7e8, object=0xa6cc548) at qdbusintegrator_p.h:101
#38 0x006d63fe in QObject::event (this=0xa6cc548, e=0xb66b7e8) at kernel/qobject.cpp:1248
#39 0x012f64dc in QApplicationPrivate::notify_helper (this=0x9f17d78, receiver=0xa6cc548, e=0xb66b7e8) at kernel/qapplication.cpp:4300
#40 0x012fd05e in QApplication::notify (this=0x9f11c80, receiver=0xa6cc548, e=0xb66b7e8) at kernel/qapplication.cpp:3704
#41 0x00fe9f2a in KApplication::notify (this=0x9f11c80, receiver=0xa6cc548, event=0xb66b7e8) at ../../kdeui/kernel/kapplication.cpp:302
#42 0x006c5a3b in QCoreApplication::notifyInternal (this=0x9f11c80, receiver=0xa6cc548, event=0xb66b7e8) at kernel/qcoreapplication.cpp:704
#43 0x006c8473 in QCoreApplication::sendEvent (receiver=0x0, event_type=0, data=0x9eabfc8) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#44 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9eabfc8) at kernel/qcoreapplication.cpp:1345
#45 0x006c85dd in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1238
#46 0x006f1adf in QCoreApplication::sendPostedEvents (s=0x9f19598) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#47 postEventSourceDispatch (s=0x9f19598) at kernel/qeventdispatcher_glib.cpp:276
#48 0x04db65e5 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#49 0x04dba2d8 in ?? () from /lib/libglib-2.0.so.0
#50 0x04dba4b8 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#51 0x006f15d5 in QEventDispatcherGlib::processEvents (this=0x9f17c20, flags=...) at kernel/qeventdispatcher_glib.cpp:412
#52 0x013b6135 in QGuiEventDispatcherGlib::processEvents (this=0x9f17c20, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#53 0x006c4059 in QEventLoop::processEvents (this=0xbfab8744, flags=) at kernel/qeventloop.cpp:149
#54 0x006c44aa in QEventLoop::exec (this=0xbfab8744, flags=...) at kernel/qeventloop.cpp:201
#55 0x006c869f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#56 0x012f6577 in QApplication::exec () at kernel/qapplication.cpp:3579
#57 0x0244605e in kdemain (argc=1, argv=0x9f09938) at ../../../../plasma/desktop/shell/main.cpp:112
#58 0x0804e133 in launch (argc=<value optimized out>, _name=<value optimized out>, args=<value optimized out>, cwd=0x0, envc=0, envs=0x9eacc80 "", reset_env=false, tty=0x0, avoid_loops=false, 
    startup_id_str=0x8051465 "0") at ../../kinit/kinit.cpp:717
#59 0x0804ec6d in handle_launcher_request (sock=<value optimized out>, who=<value optimized out>) at ../../kinit/kinit.cpp:1209
#60 0x0804f190 in handle_requests (waitForPid=<value optimized out>) at ../../kinit/kinit.cpp:1402
#61 0x0804fe4f in main (argc=4, argv=0xbfab91f4, envp=0xbfab9208) at ../../kinit/kinit.cpp:1845

Reported using DrKonqi
Comment 1 Sebastian Kügler 2010-12-20 15:22:56 UTC
Ubuntu ships an old snapshot of the network management widget, or maybe knetworkmanager.

Can you update to the latest SVN version, and see if it still crashes for you?

I'm regularly using the kill switch myself, and haven't seen it crashing even once.
Comment 2 Lamarque V. Souza 2011-04-26 06:34:18 UTC
Git commit d5b519eeaeccf056ca7d91d1db20cb96950b8522 by Lamarque V. Souza.
Committed on 26/04/2011 at 06:41.
Pushed by lvsouza into branch 'master'.

Try to avoid dangling pointer when setting signal strength for an access
point that has just been destroyed.

CCBUG: 259351

M  +7    -0    applet/interfaceitem.cpp     

http://commits.kde.org/networkmanagement/d5b519eeaeccf056ca7d91d1db20cb96950b8522
Comment 3 Lamarque V. Souza 2011-04-26 06:34:19 UTC
Git commit 0bb075ec4e686cd4a54fc850b2129e855d239cdf by Lamarque V. Souza.
Committed on 26/04/2011 at 06:41.
Pushed by lvsouza into branch 'nm09'.

Try to avoid dangling pointer when setting signal strength for an access
point that has just been destroyed.

CCBUG: 259351
(cherry picked from commit d5b519eeaeccf056ca7d91d1db20cb96950b8522)

M  +7    -0    applet/interfaceitem.cpp     

http://commits.kde.org/networkmanagement/0bb075ec4e686cd4a54fc850b2129e855d239cdf
Comment 4 Lamarque V. Souza 2011-05-10 19:51:04 UTC
*** Bug 272964 has been marked as a duplicate of this bug. ***
Comment 5 Lamarque V. Souza 2011-05-26 18:20:19 UTC
Can someone test if this problem is really fixed? I cannot reproduce it, so I will close this bug if nobody can reproduce it.
Comment 6 Lamarque V. Souza 2011-06-23 22:32:07 UTC
*** Bug 275668 has been marked as a duplicate of this bug. ***
Comment 7 Lamarque V. Souza 2011-06-23 22:33:20 UTC
*** Bug 237737 has been marked as a duplicate of this bug. ***
Comment 8 Lamarque V. Souza 2011-06-23 22:34:45 UTC
Closing. Reopen if it happens again.