Bug 436651

Summary: thumbnail.so crashing when updating a PDF document
Product: [Frameworks and Libraries] kio-extras Reporter: Louis Moureaux <m_louis30>
Component: Thumbnails and previewsAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: meven29
Priority: NOR    
Version: 21.04.0   
Target Milestone: ---   
Platform: Neon   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Louis Moureaux 2021-05-05 18:15:27 UTC
SUMMARY

kinit crashes every now and then with a stack trace in ThumbnailProtocol::get(). The detailed stack trace for all threads can be found at the end of this report under "ADDITIONAL INFORMATION".

I can debug further and maybe even provide a patch if provided with instructions to use a locally built thumbnails.so without breaking my session. I didn't see anything obvious by quickly reading the code.

STEPS TO REPRODUCE

I can reliably trigger this by updating a particular PDF document with lualatex, but I think there are other conditions. It doesn't matter if the document is open in Okular or not.

OBSERVED RESULT

Crash.

EXPECTED RESULT

No crash.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Neon User Edition
(available in About System)
KDE Plasma Version: 5.21.4
KDE Frameworks Version: 5.81.0
Qt Version: 5.15.2

ADDITIONAL INFORMATION

Application: kdeinit5 (kdeinit5), signal: Segmentation fault

[New LWP 227220]
[New LWP 227221]
[New LWP 227222]
[New LWP 227223]
[New LWP 227224]
[New LWP 227225]
[New LWP 227235]
[New LWP 227236]
[New LWP 227237]
[New LWP 227238]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007faa448c0aff in __GI___poll (fds=0x7ffd19c8b228, nfds=1, timeout=1000) at ../sysdeps/unix/sysv/linux/poll.c:29
[Current thread is 1 (Thread 0x7faa413eccc0 (LWP 227219))]

Thread 11 (Thread 0x7faa1904c700 (LWP 227238)):
#0  futex_abstimed_wait_cancelable (private=<optimized out>, abstime=0x7faa1904bcd0, clockid=<optimized out>, expected=0, futex_word=0x55626b29b8a0) at ../sysdeps/nptl/futex-internal.h:320
#1  __pthread_cond_wait_common (abstime=0x7faa1904bcd0, clockid=<optimized out>, mutex=0x55626b29b850, cond=0x55626b29b878) at pthread_cond_wait.c:520
#2  __pthread_cond_timedwait (cond=0x55626b29b878, mutex=0x55626b29b850, abstime=0x7faa1904bcd0) at pthread_cond_wait.c:656
#3  0x00007faa44a70ce8 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007faa44a6e1f1 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007faa44a6abec in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007faa43e29609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007faa448cd293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 0x7faa1984d700 (LWP 227237)):
#0  futex_abstimed_wait_cancelable (private=<optimized out>, abstime=0x7faa1984ccd0, clockid=<optimized out>, expected=0, futex_word=0x55626b29b470) at ../sysdeps/nptl/futex-internal.h:320
#1  __pthread_cond_wait_common (abstime=0x7faa1984ccd0, clockid=<optimized out>, mutex=0x55626b29b420, cond=0x55626b29b448) at pthread_cond_wait.c:520
#2  __pthread_cond_timedwait (cond=0x55626b29b448, mutex=0x55626b29b420, abstime=0x7faa1984ccd0) at pthread_cond_wait.c:656
#3  0x00007faa44a70ce8 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007faa44a6e1f1 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007faa44a6abec in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007faa43e29609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007faa448cd293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7faa1a04e700 (LWP 227236)):
#0  futex_abstimed_wait_cancelable (private=<optimized out>, abstime=0x7faa1a04dcd0, clockid=<optimized out>, expected=0, futex_word=0x55626b29b080) at ../sysdeps/nptl/futex-internal.h:320
#1  __pthread_cond_wait_common (abstime=0x7faa1a04dcd0, clockid=<optimized out>, mutex=0x55626b29b030, cond=0x55626b29b058) at pthread_cond_wait.c:520
#2  __pthread_cond_timedwait (cond=0x55626b29b058, mutex=0x55626b29b030, abstime=0x7faa1a04dcd0) at pthread_cond_wait.c:656
#3  0x00007faa44a70ce8 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007faa44a6e1f1 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007faa44a6abec in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007faa43e29609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007faa448cd293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7faa1a84f700 (LWP 227235)):
#0  futex_abstimed_wait_cancelable (private=<optimized out>, abstime=0x7faa1a84ecd0, clockid=<optimized out>, expected=0, futex_word=0x55626b29a7b0) at ../sysdeps/nptl/futex-internal.h:320
#1  __pthread_cond_wait_common (abstime=0x7faa1a84ecd0, clockid=<optimized out>, mutex=0x55626b29a760, cond=0x55626b29a788) at pthread_cond_wait.c:520
#2  __pthread_cond_timedwait (cond=0x55626b29a788, mutex=0x55626b29a760, abstime=0x7faa1a84ecd0) at pthread_cond_wait.c:656
#3  0x00007faa44a70ce8 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007faa44a6e1f1 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007faa44a6abec in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007faa43e29609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007faa448cd293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7faa308fd700 (LWP 227225)):
#0  0x00007faa448c0aff in __GI___poll (fds=0x7faa20004e60, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007faa4330e36e in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007faa4330e4a3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007faa44caaffb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007faa44c4f1eb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007faa44a69a52 in QThread::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007faa408a4f4b in ?? () from /lib/x86_64-linux-gnu/libQt5DBus.so.5
#7  0x00007faa44a6abec in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007faa43e29609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007faa448cd293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7faa310fe700 (LWP 227224)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55626af150c8) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55626af15078, cond=0x55626af150a0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55626af150a0, mutex=0x55626af15078) at pthread_cond_wait.c:638
#3  0x00007faa36d5eb5b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007faa36d5e75b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007faa43e29609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007faa448cd293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7faa318ff700 (LWP 227223)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55626af150c8) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55626af15078, cond=0x55626af150a0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55626af150a0, mutex=0x55626af15078) at pthread_cond_wait.c:638
#3  0x00007faa36d5eb5b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007faa36d5e75b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007faa43e29609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007faa448cd293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7faa3c9a2700 (LWP 227222)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55626af150c8) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55626af15078, cond=0x55626af150a0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55626af150a0, mutex=0x55626af15078) at pthread_cond_wait.c:638
#3  0x00007faa36d5eb5b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007faa36d5e75b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007faa43e29609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007faa448cd293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7faa3d1a3700 (LWP 227221)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55626af150c8) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55626af15078, cond=0x55626af150a0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55626af150a0, mutex=0x55626af15078) at pthread_cond_wait.c:638
#3  0x00007faa36d5eb5b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007faa36d5e75b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007faa43e29609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007faa448cd293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7faa3e795700 (LWP 227220)):
#0  0x00007faa448c0aff in __GI___poll (fds=0x7faa3e794c68, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007faa4561dc1a in ?? () from /lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007faa4561f90a in xcb_wait_for_event () from /lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007faa3ec2ed58 in ?? () from /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4  0x00007faa44a6abec in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007faa43e29609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007faa448cd293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7faa413eccc0 (LWP 227219)):
[KCrash Handler]
#4  __memmove_avx_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:262
#5  0x00007faa457f6061 in memcpy (__len=46080, __src=<optimized out>, __dest=0x7faa3d3fc000) at /usr/include/x86_64-linux-gnu/bits/string_fortified.h:34
#6  ThumbnailProtocol::get (this=0x7ffd19c8bd90, url=...) at ./thumbnail/thumbnail.cpp:301
#7  0x00007faa40d5dab6 in KIO::SlaveBase::dispatch(int, QByteArray const&) () from /usr/lib/x86_64-linux-gnu/libKF5KIOCore.so.5
#8  0x00007faa40d5e156 in KIO::SlaveBase::dispatchLoop() () from /usr/lib/x86_64-linux-gnu/libKF5KIOCore.so.5
#9  0x00007faa457f2c42 in kdemain (argc=<optimized out>, argv=0x55626add1100) at ./thumbnail/thumbnail.cpp:124
#10 0x000055626abab076 in launch (argc=4, _name=0x55626add01e8 "/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/thumbnail.so", args=0x55626add0291 "", cwd=<optimized out>, envc=0, envs=<optimized out>, reset_env=false, tty=0x0, avoid_loops=false, startup_id_str=0x55626abae187 "0") at ./src/kdeinit/kinit.cpp:692
#11 0x000055626abac4da in handle_launcher_request (sock=7, who=<optimized out>) at ./src/kdeinit/kinit.cpp:1130
#12 0x000055626abaceca in handle_requests (waitForPid=0) at ./src/kdeinit/kinit.cpp:1323
#13 0x000055626aba80ff in main (argc=1, argv=<optimized out>) at ./src/kdeinit/kinit.cpp:1761
[Inferior 1 (process 227219) detached]
Comment 1 Méven Car 2021-05-06 06:23:13 UTC

*** This bug has been marked as a duplicate of bug 430862 ***