[okular] [Bug 451059] Okular freezes for up to 10 seconds when loading a document or switching windows

Amaury Pouly bugzilla_noreply at kde.org
Mon Apr 11 17:40:55 BST 2022


https://bugs.kde.org/show_bug.cgi?id=451059

--- Comment #9 from Amaury Pouly <amaury.pouly at gmail.com> ---
Hi, I have made progress on this (I think)!
By running okular in a debugger and stopping the program when it freezes, I
have noticed that almost every time the backtrace is as follows (slightly
abbreviated):

#0  0x00007ffff6231be5 in __GI___clock_nanosleep (clock_id=clock_id at entry=0,
flags=flags at entry=0, req=0x7fffffffd0f0, rem=0x7fffffffd0f0) at
../sysdeps/unix/sysv/linux/clock_nanosleep.c:43
#1  0x00007ffff6236ca3 in __GI___nanosleep (req=<optimized out>, rem=<optimized
out>) at ../sysdeps/unix/sysv/linux/nanosleep.c:25
#2  0x00007ffff686ca5d in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007ffff674b01f in QLockFile::tryLock(int) () from
/usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007ffff79adc59 in KConfigIniBackend::lock (this=0x5555556e12b0) at
./src/core/kconfigini.cpp:632
#5  0x00007ffff7998796 in KConfigPrivate::lockLocal (this=0x5555556e2a90) at
./src/core/kconfig.cpp:123
#6  KConfig::sync (this=0x5555556e2b50) at ./src/core/kconfig.cpp:422
#7  0x00007ffff7c97c0e in KMainWindow::saveAutoSaveSettings (this=<optimized
out>) at ./src/kmainwindow.cpp:882
#8  0x00007ffff684c123 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007ffff684ffca in QTimer::timeout(QTimer::QPrivateSignal) () from
/usr/lib/x86_64-linux-gnu/libQt5Core.so.5

Recall that I have many (20+) instances of okular running so my theory is now
that there might be a lot of contention on the config file lock. This can be
easily checked by running (in my case):
    inotifywait -m -r /home/pamaury/.config/
and observe that okular is *very very frequently* taking a lock okularrc.lock
to write okularrc.
Actually, this is slightly scary: just switching between virtual desktop will
trigger a flurry of creation/deletion of this file.
I cannot explain yet *how* this can possibly lock for 10 seconds however.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Okular-devel mailing list