| Summary: | Dolphin hangs ~2 minutes when started | ||
|---|---|---|---|
| Product: | [Applications] dolphin | Reporter: | Johan Persson <johanp> |
| Component: | general | Assignee: | David Faure <faure> |
| Status: | RESOLVED INTENTIONAL | ||
| Severity: | crash | CC: | cfeck |
| Priority: | NOR | Keywords: | drkonqi |
| Version First Reported In: | 4.11.1 | ||
| Target Milestone: | --- | ||
| Platform: | openSUSE | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
Johan Persson
2013-09-23 20:01:04 UTC
Did you start it as user "root" without using kdesu? (Sorry for forgetting to add that info). Yes, the crash happens when I run from terminal as "root". Doing a "export $(dbus-launch)" before running solves the problem. So I guess this makes it a duplicate of bug #309928. For the crash, yes. But you also mixed in another issue into this report: the long delay when starting. For this, please see bug 283081, bug 324654, bug 320262. If you find a different cause, please try to follow http://community.kde.org/Dolphin/FAQ/Freeze Running Dolphin through gdb. I dumped the thread during the temporary hang. Dolphin main windows shows after ~1,5min.
Starting as root with "kdesu" shows the window after ~2s
This behaviour is 100% repeatable on this machine. (Reverting back to 12.3 + KDE 4.11.1 everything works fine again so this seems to be a SuSE permission issue of some sort.
(gdb) run
Starting program: /usr/bin/dolphin
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Traceback (most recent call last):
File "/usr/share/gdb/auto-load/usr/lib64/libgobject-2.0.so.0.3707.0-gdb.py", line 9, in <module>
from gobject import register
File "/usr/share/glib-2.0/gdb/gobject.py", line 3, in <module>
import gdb.backtrace
ImportError: No module named backtrace
[New Thread 0x7fffdb761700 (LWP 4882)]
Detaching after fork from child process 4883.
Detaching after fork from child process 4884.
[New Thread 0x7fffda7b7700 (LWP 4885)]
^Z
Program received signal SIGTSTP, Stopped (user).
0x00007ffff78659fd in poll () at ../sysdeps/unix/syscall-template.S:81
81 ../sysdeps/unix/syscall-template.S: No such file or directory.
(gdb) thread apply all backtrace
Thread 3 (Thread 0x7fffda7b7700 (LWP 4885)):
#0 0x00007ffff78659fd in poll () at ../sysdeps/unix/syscall-template.S:81
#1 0x00007fffef0295d4 in g_main_context_poll (priority=2147483647, n_fds=2, fds=0x8e39b0,
timeout=-1, context=0x8e0fa0) at gmain.c:4006
#2 g_main_context_iterate (context=context@entry=0x8e0fa0, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3707
#3 0x00007fffef0296dc in g_main_context_iteration (context=0x8e0fa0, may_block=1) at gmain.c:3773
#4 0x00007ffff36b5d76 in QEventDispatcherGlib::processEvents (this=0x8cb790, flags=...)
at kernel/qeventdispatcher_glib.cpp:427
#5 0x00007ffff3687d0f in QEventLoop::processEvents (this=this@entry=0x7fffda7b6d20, flags=...)
at kernel/qeventloop.cpp:149
#6 0x00007ffff3688005 in QEventLoop::exec (this=this@entry=0x7fffda7b6d20, flags=...)
at kernel/qeventloop.cpp:204
#7 0x00007ffff3586fef in QThread::exec (this=this@entry=0x8df290) at thread/qthread.cpp:536
#8 0x00007ffff3669513 in QInotifyFileSystemWatcherEngine::run (this=0x8df290)
at io/qfilesystemwatcher_inotify.cpp:256
#9 0x00007ffff358968f in QThreadPrivate::start (arg=0x8df290) at thread/qthread_unix.cpp:338
#10 0x00007ffff1c550db in start_thread (arg=0x7fffda7b7700) at pthread_create.c:309
#11 0x00007ffff786e7cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111
Thread 2 (Thread 0x7fffdb761700 (LWP 4882)):
#0 0x00007ffff78677d3 in select () at ../sysdeps/unix/syscall-template.S:81
#1 0x00007ffff3666261 in QProcessManager::run (
this=0x7ffff39ef520 <processManager()::processManager>) at io/qprocess_unix.cpp:247
#2 0x00007ffff358968f in QThreadPrivate::start (
arg=0x7ffff39ef520 <processManager()::processManager>) at thread/qthread_unix.cpp:338
#3 0x00007ffff1c550db in start_thread (arg=0x7fffdb761700) at pthread_create.c:309
#4 0x00007ffff786e7cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111
Thread 1 (Thread 0x7ffff7fa5880 (LWP 4878)):
#0 0x00007ffff78659fd in poll () at ../sysdeps/unix/syscall-template.S:81
#1 0x00007fffed1ea8d8 in poll (__timeout=<optimized out>, __nfds=<optimized out>,
__fds=<optimized out>) at /usr/include/bits/poll2.h:46
#2 _dbus_poll (fds=<optimized out>, n_fds=<optimized out>, timeout_milliseconds=<optimized out>)
at dbus-sysdeps-unix.c:2545
#3 0x00007fffed1e44b8 in socket_do_iteration (transport=0x7097b0, flags=6,
timeout_milliseconds=<optimized out>) at dbus-transport-socket.c:1125
#4 0x00007fffed1e33ff in _dbus_transport_do_iteration (transport=0x7097b0, flags=1, flags@entry=6,
timeout_milliseconds=timeout_milliseconds@entry=25000) at dbus-transport.c:976
#5 0x00007fffed1cd854 in _dbus_connection_do_iteration_unlocked (
connection=connection@entry=0x714120, pending=pending@entry=0xc83c70, flags=flags@entry=6,
timeout_milliseconds=timeout_milliseconds@entry=25000) at dbus-connection.c:1234
#6 0x00007fffed1ce2a9 in _dbus_connection_block_pending_call (pending=0xc83c70)
at dbus-connection.c:2420
#7 0x00007fffed1dd67a in dbus_pending_call_block (pending=<optimized out>) at dbus-pending-call.c:748
#8 0x00007fffed1ce86d in dbus_connection_send_with_reply_and_block (connection=0x714120,
message=0x7e6430, timeout_milliseconds=-1, error=0x7fffffffd430) at dbus-connection.c:3535
#9 0x00007ffff32b55d0 in q_dbus_connection_send_with_reply_and_block (error=0x7fffffffd430,
timeout_milliseconds=-1, message=0x7e6430, connection=<optimized out>) at qdbus_symbols_p.h:135
#10 QDBusConnectionPrivate::sendWithReply (this=this@entry=0x714ef0, message=...,
sendMode=sendMode@entry=1, timeout=timeout@entry=-1) at qdbusintegrator.cpp:1912
#11 0x00007ffff32b7362 in QDBusConnectionPrivate::findMetaObject (this=0x714ef0, service=...,
path=..., interface=..., error=...) at qdbusintegrator.cpp:2386
#12 0x00007ffff32c297b in QDBusInterfacePrivate::QDBusInterfacePrivate (this=0xafb730, serv=...,
p=..., iface=..., con=...) at qdbusinterface.cpp:158
---Type <return> to continue, or q <return> to quit---
#13 0x00007ffff32c2aa5 in QDBusInterface::QDBusInterface (this=0x7fffffffd700, service=..., path=...,
interface=..., connection=..., parent=0x0) at qdbusinterface.cpp:220
#14 0x00007ffff55a0ef0 in KIO::SchedulerPrivate::registerWindow (this=<optimized out>,
wid=<optimized out>) at /usr/src/debug/kdelibs-4.11.1/kio/kio/scheduler.cpp:1346
#15 0x00007ffff55312ba in KDirListerCache::listDir (this=0x64a150, lister=0xb41d30, _u=...,
_keep=<optimized out>, _reload=<optimized out>)
at /usr/src/debug/kdelibs-4.11.1/kio/kio/kdirlister.cpp:227
#16 0x00007ffff6b7d43b in KFileItemModel::loadDirectory (this=<optimized out>, url=...)
at /usr/src/debug/kde-baseapps-4.11.1/dolphin/src/kitemviews/kfileitemmodel.cpp:122
#17 0x00007ffff6bc90f0 in DolphinView::loadDirectory (this=0xc81810, url=..., reload=<optimized out>)
at /usr/src/debug/kde-baseapps-4.11.1/dolphin/src/views/dolphinview.cpp:1517
#18 0x00007ffff6bcd204 in DolphinView::DolphinView (this=0xc81810, url=..., parent=<optimized out>)
at /usr/src/debug/kde-baseapps-4.11.1/dolphin/src/views/dolphinview.cpp:200
#19 0x00007ffff7b8458a in DolphinViewContainer::DolphinViewContainer (this=0x8c4820, url=...,
parent=<optimized out>)
at /usr/src/debug/kde-baseapps-4.11.1/dolphin/src/dolphinviewcontainer.cpp:109
#20 0x00007ffff7b75b6e in DolphinMainWindow::createViewContainer (this=this@entry=0x811c00, url=...,
parent=0x72c1f0) at /usr/src/debug/kde-baseapps-4.11.1/dolphin/src/dolphinmainwindow.cpp:1472
#21 0x00007ffff7b81b4f in DolphinMainWindow::DolphinMainWindow (this=0x811c00,
__in_chrg=<optimized out>, __vtt_parm=<optimized out>)
at /usr/src/debug/kde-baseapps-4.11.1/dolphin/src/dolphinmainwindow.cpp:160
#22 0x00007ffff7b73906 in DolphinApplication::DolphinApplication (this=0x7fffffffdd30)
at /usr/src/debug/kde-baseapps-4.11.1/dolphin/src/dolphinapplication.cpp:35
#23 0x00007ffff7b89e0e in kdemain (argc=1, argv=0x7fffffffde68)
at /usr/src/debug/kde-baseapps-4.11.1/dolphin/src/main.cpp:89
#24 0x00007ffff77a8be5 in __libc_start_main (main=0x400730 <main(int, char**)>, argc=1,
argv=0x7fffffffde68, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
stack_end=0x7fffffffde58) at libc-start.c:269
#25 0x0000000000400761 in _start () at ../sysdeps/x86_64/start.S:122
Odd, KIO::SchedulerPrivate::registerWindow seems to try to contact D-Bus, but does not get an expected reply. I do not know KIO enough to understand which part of KDE it tries to contact - reassigning. Do you experience any other hangs (even if "only" about 20 seconds)? (The crash is indeed a duplicate of bug 309928, that leaves the freeze). Yes, for example launching konqueror exhibits pretty much the same problem a delay around ~1.5min until the application window first shows. Then there is again long delays (minutes) to, for example, click on "Home folder" until it opens. In general it seems to affect a bunch of KDE apps - but not all. Konsole for example launches as normal. There is definitely a DBUS issue in some capacity however running applications as root does not exhibit this issue. I can also see a lot of timeouts in the system log when various applications tries to talk to dbus. For example: dbus[530]: [system] Successfully activated service 'org.bluez' 2013-09-25T00:38:45.472504+02:00 gamma dbus[530]: [system] Rejected send message, 2 matched rules; type="method_call", sender=":1.6" (uid=1000 pid=1585 comm="kdeinit4: kded4 [kdeinit] ") interface="org.bluez.Manager" member="DefaultAdapter" error name="(unset)" requested_reply="0" destination="org.bluez" (uid=0 pid=2200 comm="/usr/lib/bluetooth/bluetoothd ") 2013-09-25T00:38:45.473208+02:00 gamma dbus[530]: [system] Rejected send message, 2 matched rules; type="method_call", sender=":1.18" (uid=1000 pid=1708 comm="/usr/bin/pulseaudio --start --log-target=syslog ") interface="org.bluez.Manager" member="GetProperties" error name="(unset)" requested_reply="0" destination="org.bluez" (uid=0 pid=2200 comm="/usr/lib/bluetooth/bluetoothd ") 2013-09-25T00:38:45.473885+02:00 gamma pulseaudio[1708]: [pulseaudio] bluetooth-util.c: org.bluez.Manager.GetProperties() failed: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 2 matched rules; type="method_call", sender=":1.18" (uid=1000 pid=1708 comm="/usr/bin/pulseaudio --start --log-target=syslog ") interface="org.bluez.Manager" member="GetProperties" error name="(unset)" requested_reply="0" destination="org.bluez" (uid=0 pid=2200 comm="/usr/lib/bluetooth/bluetoothd ") 2013-09-25T00:38:45.474654+02:00 gamma bluetoothd[2200]: Unable to get on D-Bus (I'm a developer myself but unfortunately not for KDE so I cannot be of much help here - apart from providing various debug logs and help to do some simple remote debugging) I don't believe this is intrinsic to KDE 4.11.1 since I can run 4.11.1 that with SuSE 12.3 on the same machine just fine. The server is a semi-old ~5yr old HW which I keep around as backup but nothing fancy so the HW is definitely not exotic enough to cause any issues. A blocked D-Bus could be caused by a faulty kded module. If you are able to follow http://kdepepo.wordpress.com/2011/05/11/troubleshooting-kded4-bugs/ please try to disabled kded modules to find out if one of them is the cause for the issue. D-Bus sets up communication channels per-user, that's why you do not see the issue with root. (Reading comment #7, you should probably try the bluetooth and/or sound/audio related kded modules first). It seems like this problem is caused by bluetooth. Disabling bluetoth service cures this problem. Since this serve doesn't even have bluetooth this seems like a bug in the SuSE installation which enables a service which shouldn't be enabled and then causes ripples in the system. I think this report should be closed and possibly a new one being opened on the bluetooth service since I guess a behaviour of blocking DBUS is not exactly correct even if there is no BT HW. I'm closing this as "resolved - wontfix" if you don't have any other opinion. |