Bug 359737

Summary: ksmserver crashes when trying to create a new session
Product: [Unmaintained] ksmserver Reporter: S. Beck <kde-0egtnzvt>
Component: generalAssignee: Lubos Lunak <l.lunak>
Status: RESOLVED DUPLICATE    
Severity: crash CC: wbauer1
Priority: NOR    
Version: 5.4.3   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description S. Beck 2016-02-24 03:02:10 UTC
I'm on OpenSuSE 42.1 (leap).  It's a new install (installed 1 day ago).  I've created a clean home directory so there's no config setting left over to cause the problem.

This is a multi-user system.  I log in as one user, but then want to create a second session with another user.  I was able to do so yesterday, but it has stopped working today for no reason that I can see.

From the KDE menu, I select <New Session> and it pops up the window.  Since no other user is logged in, I click the <New Session> button, and the window dissappears, but it doesn't go to a long screen to allow me to select a new user.

I go back to the KDE menu and select <New Session> again, and I immediately get the KDE crash window saying that ksmserver has died with a segmentation fault.

This happens every time on my system now.

The crash dump is:


Application: ksmserver (ksmserver), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f2e24ce7840 (LWP 20703))]

Thread 2 (Thread 0x7f2e00b76700 (LWP 20871)):
#0  0x00007f2e24616bbd in poll () from /lib64/libc.so.6
#1  0x00007f2e18b6ce64 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f2e18b6cf7c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f2e1f1fcd8b in QEventDispatcherGlib::processEvents (this=0x7f2df8149d70, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f2e1f1a3d53 in QEventLoop::exec (this=this@entry=0x7f2e00b75d70, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#5  0x00007f2e1efc561a in QThread::exec (this=this@entry=0xae1d00) at thread/qthread.cpp:503
#6  0x00007f2e227bfdf8 in QQmlThreadPrivate::run (this=0xae1d00) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/ftw/qqmlthread.cpp:141
#7  0x00007f2e1efca32f in QThreadPrivate::start (arg=0xae1d00) at thread/qthread_unix.cpp:331
#8  0x00007f2e1a4bf0a4 in start_thread () from /lib64/libpthread.so.0
#9  0x00007f2e2461efed in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f2e24ce7840 (LWP 20703)):
[KCrash Handler]
#6  ref (this=0x4) at /usr/include/qt5/QtCore/qrefcount.h:54
#7  toQString (this=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/jsruntime/qv4string_p.h:84
#8  toQString (this=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/jsruntime/qv4string_p.h:145
#9  QV4::Heap::StringObject::StringObject (this=<optimized out>, engine=0xf328a0, val=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/jsruntime/qv4stringobject.cpp:91
#10 0x00007f2e22679f15 in alloc<QV4::StringObject, QV4::ExecutionEngine*, QV4::Value> (arg2=..., arg1=0xf328a0, this=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/jsruntime/qv4mm_p.h:126
#11 QV4::ExecutionEngine::newStringObject (this=0xf328a0, value=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/jsruntime/qv4engine.cpp:557
#12 0x00007f2e22716ce1 in QV4::Runtime::getProperty (engine=0xf328a0, object=..., nameIndex=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/jsruntime/qv4runtime.cpp:682
#13 0x00007f2e01cc67f5 in ?? ()
#14 0x00007f2df82c1210 in ?? ()
#15 0x0000000000f32c48 in ?? ()
#16 0x00007f2df80a4030 in ?? ()
#17 0x00007f2e227157e1 in call (d=0xf328a0, this=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/jsruntime/qv4object_p.h:305
#18 QV4::RuntimeHelpers::objectDefaultValue (object=0x7ffde029dd40, typeHint=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/jsruntime/qv4runtime.cpp:408
#19 0x00007f2e226b9372 in QV4::SimpleScriptFunction::call (that=<optimized out>, callData=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/jsruntime/qv4functionobject.cpp:564
#20 0x00007f2e227a6c53 in call (d=<optimized out>, this=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/jsruntime/qv4object_p.h:305
#21 QQmlJavaScriptExpression::evaluate (this=this@entry=0xf32d30, context=<optimized out>, function=..., callData=callData@entry=0x7f2e08a6d008, isUndefined=0x7ffde029df88) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmljavascriptexpression.cpp:158
#22 0x00007f2e227a71ae in QQmlJavaScriptExpression::evaluate (this=this@entry=0xf32d30, context=<optimized out>, function=..., isUndefined=isUndefined@entry=0x7ffde029df88) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmljavascriptexpression.cpp:116
#23 0x00007f2e227ac7a1 in QQmlBinding::update (this=0xf32d10, flags=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlbinding.cpp:194
#24 0x00007f2e227b654a in setEnabled (f=..., e=true, this=0xf32d48) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlabstractbinding_p.h:110
#25 QQmlObjectCreator::finalize (this=0xdb8160, interrupt=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlobjectcreator.cpp:1194
#26 0x00007f2e227491ea in QQmlIncubatorPrivate::incubate (this=this@entry=0xef4f20, i=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlincubator.cpp:348
#27 0x00007f2e22749bca in QQmlEnginePrivate::incubate (this=this@entry=0xd680d0, i=..., forContext=forContext@entry=0xef4e40) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlincubator.cpp:87
#28 0x00007f2e2274537c in QQmlComponent::create (this=<optimized out>, incubator=..., context=<optimized out>, forContext=forContext@entry=0x0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlcomponent.cpp:1068
#29 0x00007f2e22d58a7a in QQuickLoaderPrivate::_q_sourceLoaded (this=this@entry=0x1019a10) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/items/qquickloader.cpp:714
#30 0x00007f2e22d58bf8 in QQuickLoaderPrivate::load (this=0x1019a10) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/items/qquickloader.cpp:597
#31 0x00007f2e227b608b in QQmlObjectCreator::finalize (this=0xef4430, interrupt=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlobjectcreator.cpp:1207
#32 0x00007f2e227491ea in QQmlIncubatorPrivate::incubate (this=this@entry=0xe56140, i=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlincubator.cpp:348
#33 0x00007f2e22749bca in QQmlEnginePrivate::incubate (this=this@entry=0xd680d0, i=..., forContext=forContext@entry=0xe8fa40) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlincubator.cpp:87
#34 0x00007f2e2274537c in QQmlComponent::create (this=<optimized out>, incubator=..., context=<optimized out>, forContext=forContext@entry=0x0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlcomponent.cpp:1068
#35 0x00007f2e22d58a7a in QQuickLoaderPrivate::_q_sourceLoaded (this=this@entry=0x10443e0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/items/qquickloader.cpp:714
#36 0x00007f2e22d58bf8 in QQuickLoaderPrivate::load (this=0x10443e0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/items/qquickloader.cpp:597
#37 0x00007f2e227b608b in QQmlObjectCreator::finalize (this=0xddbb90, interrupt=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlobjectcreator.cpp:1207
#38 0x00007f2e22744e2b in QQmlComponentPrivate::complete (enginePriv=0xd680d0, state=state@entry=0xf35260) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlcomponent.cpp:928
#39 0x00007f2e22744ee7 in QQmlComponentPrivate::completeCreate (this=0xf351c0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlcomponent.cpp:964
#40 0x00007f2e22744d70 in QQmlComponent::create (this=0xae65f0, context=0x9d90c0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlcomponent.cpp:791
#41 0x00007f2e22d5fa14 in QQuickView::continueExecute (this=this@entry=0xffcab0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/items/qquickview.cpp:476
#42 0x00007f2e22d5fe4d in QQuickViewPrivate::execute (this=0xdfe240) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/items/qquickview.cpp:124
#43 0x00007f2e22d5ff7a in QQuickView::setSource (this=this@entry=0xffcab0, url=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/items/qquickview.cpp:253
#44 0x00007f2e248ffb5b in KSMSwitchUserDialog::KSMSwitchUserDialog (this=0xffcab0, dm=<optimized out>, parent=<optimized out>) at /usr/src/debug/plasma-workspace-5.5.4/ksmserver/switchuserdialog.cpp:92
#45 0x00007f2e248f58f7 in KSMServer::openSwitchUserDialog (this=<optimized out>) at /usr/src/debug/plasma-workspace-5.5.4/ksmserver/server.cpp:1095
#46 0x00007f2e249131d5 in openSwitchUserDialog (this=<optimized out>) at /usr/src/debug/plasma-workspace-5.5.4/build/ksmserver/ksmserverinterfaceadaptor.cpp:63
#47 KSMServerInterfaceAdaptor::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/plasma-workspace-5.5.4/build/ksmserver/ksmserverinterfaceadaptor.moc:170
#48 0x00007f2e24913423 in KSMServerInterfaceAdaptor::qt_metacall (this=0x8d9440, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0x7ffde029ec50) at /usr/src/debug/plasma-workspace-5.5.4/build/ksmserver/ksmserverinterfaceadaptor.moc:232
#49 0x00007f2e21214da4 in QDBusConnectionPrivate::deliverCall (this=this@entry=0x8a2610, object=object@entry=0x8d9440, msg=..., metaTypes=..., slotIdx=12) at qdbusintegrator.cpp:979
#50 0x00007f2e212193e3 in QDBusConnectionPrivate::activateCall (this=this@entry=0x8a2610, object=0x8d9440, flags=flags@entry=273, msg=...) at qdbusintegrator.cpp:892
#51 0x00007f2e21219e83 in QDBusConnectionPrivate::activateObject (this=0x8a2610, node=..., msg=..., pathStartPos=<optimized out>) at qdbusintegrator.cpp:1462
#52 0x00007f2e2121b92e in QDBusActivateObjectEvent::placeMetaCall (this=0xe59440) at qdbusintegrator.cpp:1580
#53 0x00007f2e1f1d6ac6 in QObject::event (this=0x8bc4c0, e=<optimized out>) at kernel/qobject.cpp:1239
#54 0x00007f2e1fe89e7c in QApplicationPrivate::notify_helper (this=this@entry=0x831cf0, receiver=receiver@entry=0x8bc4c0, e=e@entry=0xe59440) at kernel/qapplication.cpp:3716
#55 0x00007f2e1fe8ecc8 in QApplication::notify (this=0x82e940, receiver=0x8bc4c0, e=0xe59440) at kernel/qapplication.cpp:3499
#56 0x00007f2e1f1a5e95 in QCoreApplication::notifyInternal (this=0x82e940, receiver=0x8bc4c0, event=event@entry=0xe59440) at kernel/qcoreapplication.cpp:965
#57 0x00007f2e1f1a8057 in sendEvent (event=0xe59440, receiver=<optimized out>) at kernel/qcoreapplication.h:224
#58 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x81d6c0) at kernel/qcoreapplication.cpp:1593
#59 0x00007f2e1f1a8608 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1451
#60 0x00007f2e1f1fd8f3 in postEventSourceDispatch (s=0x891050) at kernel/qeventdispatcher_glib.cpp:271
#61 0x00007f2e18b6cc84 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#62 0x00007f2e18b6ced8 in ?? () from /usr/lib64/libglib-2.0.so.0
#63 0x00007f2e18b6cf7c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#64 0x00007f2e1f1fcd6c in QEventDispatcherGlib::processEvents (this=0x88ef40, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#65 0x00007f2e1f1a3d53 in QEventLoop::exec (this=this@entry=0x7ffde029f460, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#66 0x00007f2e1f1ab8f6 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1229
#67 0x00007f2e248f3feb in kdemain (argc=1, argv=<optimized out>) at /usr/src/debug/plasma-workspace-5.5.4/ksmserver/main.cpp:349
#68 0x00007f2e2455bb05 in __libc_start_main () from /lib64/libc.so.6
#69 0x000000000040083e in _start () at ../sysdeps/x86_64/start.S:122


Reproducible: Always

Steps to Reproduce:
1. Select <New Session> from the KDE menu and then click the <New Session> button
2. Nothing appears, so select <New Session> again from the KDE menu (and it seg faults)
3.
Comment 1 Wolfgang Bauer 2016-03-02 14:03:51 UTC
The crash is the same as bug#357413.

"New Session" not working at all is fixed already (in 5.5.5), see bug#356945.

*** This bug has been marked as a duplicate of bug 357413 ***
Comment 2 Wolfgang Bauer 2016-03-02 14:04:44 UTC
(In reply to Wolfgang Bauer from comment #1)
> "New Session" not working at all is fixed already (in 5.5.5), see bug#356945.

PS: as a workaround, disable the screen locker, or use the "New Session" button on the screen locker. The "user switch" plasmoid should work too.