Bug 375673

Summary: Dolphin starts up after 7 seconds on a SSD
Product: [Frameworks and Libraries] frameworks-solid Reporter: Saverio Valerio <thekiller17it>
Component: generalAssignee: Lukáš Tinkl <lukas>
Status: RESOLVED WORKSFORME    
Severity: normal CC: a.samirh78, elvis.angelaccio, kdelibs-bugs-null
Priority: NOR    
Version First Reported In: 5.34.0   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: GDB Backtrace
Dolphin backtrace with Solid's debug symbols

Description Saverio Valerio 2017-01-28 16:55:36 UTC
I have a SSD, so everything is pretty fast.
But when I try to open Dolphin, the window appears after 7 seconds.
I noticed that, if I disable the Places column hitting F9, the file manager opens after 3 seconds, and the PlacesView error disappears.

Gwenview also starts up slowly.

Any suggestions? Thanks

Arch Linux, KDE Plasma 5.8.5, KDE Frameworks 5.30.0, Dolphin 16.12.1.

Using strace I noticed something about the Battery and upower:
readlinkat(AT_FDCWD, "/sys/class/power_supply/BAT0", "../../devices/LNXSYSTM:00/LNXSYB"..., 99) = 87
lstat("/sys", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
lstat("/sys/class", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/class/power_supply", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/PNP0C0A:00", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/PNP0C0A:00/power_supply", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/PNP0C0A:00/power_supply/BAT0", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
access("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/PNP0C0A:00/power_supply/BAT0/uevent", F_OK) = 0
open("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/PNP0C0A:00/power_supply/BAT0/uevent", O_RDONLY|O_CLOEXEC) = 21
fstat(21, {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0
fstat(21, {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0
read(21, "POWER_SUPPLY_NAME=BAT0\nPOWER_SUP"..., 4096) = 508
read(21, "", 4096)                      = 0
close(21)                               = 0
getrandom("\241\"\221\217{_N)/\306f\236\231\370UC", 16, GRND_NONBLOCK) = 16
getrandom("\216\261\243\2228)`\203\vt\266W\213\10\233\375", 16, GRND_NONBLOCK) = 16
getrandom("N<\310\340f\31k\254\254\244v\276\31\31\370R", 16, GRND_NONBLOCK) = 16
readlinkat(AT_FDCWD, "/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/PNP0C0A:00/power_supply/BAT0/subsystem", "../../../../../../../../class/po"..., 99) = 42
open("/run/udev/data/+power_supply:BAT0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
readlinkat(AT_FDCWD, "/sys/class/power_supply/AC", "../../devices/LNXSYSTM:00/LNXSYB"..., 99) = 86
lstat("/sys", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
lstat("/sys/class", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/class/power_supply", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/ACPI0003:00", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/ACPI0003:00/power_supply", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
lstat("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/ACPI0003:00/power_supply/AC", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
access("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/ACPI0003:00/power_supply/AC/uevent", F_OK) = 0
open("/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/ACPI0003:00/power_supply/AC/uevent", O_RDONLY|O_CLOEXEC) = 21
fstat(21, {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0
brk(0x2d4b000)                          = 0x2d4b000
fstat(21, {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0
read(21, ^Cstrace: Process 7760 detached
 <detached ...>


When I try to open Dolphin using the shell:
$ dolphin
Icon theme "elementary" not found.
Icon theme "ubuntu-mono-dark" not found.
Icon theme "Mint-X" not found.
Icon theme "gnome" not found.
Trying to convert empty KLocalizedString to QString.
Cannot creat accessible child interface for object:  PlacesView(0x16c8d80)  index:  14
Comment 1 Elvis Angelaccio 2017-01-28 20:29:50 UTC
Yes, the Places panel queries Solid for the available devices, which can take some time. 7 seconds is definitely too much though. Can you try the following steps?
- run Dolphin in gdb
- ctrl+c when it hangs
- type bt and attach here the backtrace

You should also install debug symbols, if possible.
Comment 2 Saverio Valerio 2017-01-28 20:43:04 UTC
Created attachment 103688 [details]
GDB Backtrace
Comment 3 Elvis Angelaccio 2017-01-28 20:47:54 UTC
Yep, it's definitely Solid. If you could rebuild the solid package with debug symbols (see https://wiki.archlinux.org/index.php/Debug_-_Getting_Traces) the stacktrace would be much more useful.
Comment 4 Saverio Valerio 2017-01-28 22:26:13 UTC
Created attachment 103691 [details]
Dolphin backtrace with Solid's debug symbols
Comment 5 Elvis Angelaccio 2017-01-28 22:49:10 UTC
Thanks, much better now! Moving to the solid component for investigation.

Suggestion, consider copying the backtraces inline next time, as bugzilla cannot search inside attachments. This makes it easier to search for duplicates.

For the record, this is the relevant trace:

#8  0x00007ffff532f859 in UdevQt::Device::deviceProperty (this=this@entry=0x126cb20, name=...)
    at /home/user/.cache/pacaur/solid-git/src/solid/src/solid/devices/backends/shared/udevqtdevice.cpp:247
#9  0x00007ffff5326b6d in Solid::Backends::UDev::UDevManager::Private::checkOfInterest (this=this@entry=0x8fbb40, device=...)
    at /home/user/.cache/pacaur/solid-git/src/solid/src/solid/devices/backends/udev/udevmanager.cpp:127
#10 0x00007ffff5327443 in Solid::Backends::UDev::UDevManager::Private::isOfInterest (this=0x8fbb40, udi=..., device=...)
    at /home/user/.cache/pacaur/solid-git/src/solid/src/solid/devices/backends/udev/udevmanager.cpp:73
#11 0x00007ffff5328071 in Solid::Backends::UDev::UDevManager::allDevices (this=0x8fd930)
    at /home/user/.cache/pacaur/solid-git/src/solid/src/solid/devices/backends/udev/udevmanager.cpp:166
#12 0x00007ffff53288eb in Solid::Backends::UDev::UDevManager::devicesFromQuery (this=0x8fd930, parentUdi=..., type=<optimized out>)
    at /home/user/.cache/pacaur/solid-git/src/solid/src/solid/devices/backends/udev/udevmanager.cpp:176
#13 0x00007ffff52f98fc in Solid::Device::listFromQuery (predicate=..., parentUdi=...)
    at /home/user/.cache/pacaur/solid-git/src/solid/src/solid/devices/frontend/devicemanager.cpp:149
#14 0x00007ffff688ae49 in KFilePlacesModel::Private::_k_initDeviceList() () from /usr/lib/libKF5KIOFileWidgets.so.5
Comment 6 Saverio Valerio 2017-01-28 23:04:26 UTC
I'll keep that in mind, thanks.
I would also want to highlight that with Gwenview the backtrace about the Solid component is exactly the same.
Comment 7 Saverio Valerio 2017-06-02 16:32:38 UTC
Any news? The problem is still present on Plasma 5.10 and KDE Framewoeks 5.34.0.
It's so annoying that it forces me to use another File Manager.
Comment 8 Ahmad Samir 2021-07-08 19:56:21 UTC
Is this still an issue?
Comment 9 Bug Janitor Service 2021-07-23 04:33:24 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 10 Bug Janitor Service 2021-08-07 04:36:04 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!