Bug 437272

Summary: Plasma crashed in PulseAudio::context_get_server_info_callback() when waking up the laptop that was suspended to RAM while streaming audio over network
Product: [Plasma] plasma-pa Reporter: Patrick Silva <bugseforuns>
Component: generalAssignee: David Rosca <nowrep>
Status: RESOLVED FIXED    
Severity: crash CC: cunio, haagch.christoph, kde, msafhang, nate, nicolas.fella, plasma-bugs, vcprocles
Priority: NOR Keywords: drkonqi
Version: unspecified   
Target Milestone: ---   
Platform: Neon   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=460946
Latest Commit: Version Fixed In: 5.24.7
Sentry Crash Report:

Description Patrick Silva 2021-05-17 19:39:04 UTC
Application: plasmashell (5.22.80)

Qt Version: 5.15.2
Frameworks Version: 5.83.0
Operating System: Linux 5.8.0-53-generic x86_64
Windowing System: X11
Drkonqi Version: 5.22.80
Distribution: KDE neon Unstable Edition

-- Information about the crash:
- What I was doing when the application crashed:
I suspended my laptop to RAM (via logout screen) while it was streaming audio over network to speakers connected to my
desktop computer. A few minutes later I woke up my laptop by pressing ctrl key, Plasma immediately displayed an OSD indicating
that audio output was switched to laptop speakers and them Plasma crashed.

The reporter is unsure if this crash is reproducible.

-- Backtrace:
Application: Plasma (plasmashell), signal: Segmentation fault
Content of s_kcrashErrorMessage: [Current thread is 1 (Thread 0x7fed161f58c0 (LWP 60490))]
[New LWP 60510]
[New LWP 60573]
[New LWP 60593]
[New LWP 60594]
[New LWP 60595]
[New LWP 60596]
[New LWP 60645]
[New LWP 60661]
[New LWP 60662]
[New LWP 60670]
[New LWP 60674]
[New LWP 60723]
[New LWP 60741]
[New LWP 60787]
[New LWP 62611]
[New LWP 62784]
[New LWP 62818]
[New LWP 62819]
[New LWP 62821]
[New LWP 62822]
[New LWP 62823]
[New LWP 62824]
[New LWP 62825]
[New LWP 62826]
[New LWP 62827]
[New LWP 62828]
[New LWP 64738]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007fed19fd1aff in __GI___poll (fds=fds@entry=0x7fff93cefc98, nfds=nfds@entry=1, timeout=timeout@entry=1000) at ../sysdeps/unix/sysv/linux/poll.c:29

Thread 28 (Thread 0x7fec894c3700 (LWP 64738)):
#0  0x00007fed19fd1aff in __GI___poll (fds=fds@entry=0x7fec60019a10, nfds=nfds@entry=3, timeout=timeout@entry=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fecee65d1d6 in poll (__timeout=-1, __nfds=3, __fds=0x7fec60019a10) at /usr/include/x86_64-linux-gnu/bits/poll2.h:46
#2  poll_func (ufds=0x7fec60019a10, nfds=3, timeout=-1, userdata=0x7fed080f80d0) at pulse/thread-mainloop.c:70
#3  0x00007fecee64e841 in pa_mainloop_poll (m=m@entry=0x56020c8bae50) at pulse/mainloop.c:824
#4  0x00007fecee64eec3 in pa_mainloop_iterate (m=0x56020c8bae50, block=<optimized out>, retval=0x0) at pulse/mainloop.c:926
#5  0x00007fecee64ef70 in pa_mainloop_run (m=0x56020c8bae50, retval=retval@entry=0x0) at pulse/mainloop.c:945
#6  0x00007fecee65d11d in thread (userdata=0x56020abafa40) at pulse/thread-mainloop.c:101
#7  0x00007fecee3b872c in internal_thread_func (userdata=0x560220b9cc10) at pulsecore/thread-posix.c:81
#8  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 27 (Thread 0x7fec8bfff700 (LWP 62828)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560213228584) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x560213228530, cond=0x560213228558) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x560213228558, mutex=0x560213228530) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x560213228530) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x56020cb199e0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fecedc971bc in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=this@entry=0x56020fe42f90, th=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  0x00007fecedc97f40 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x56020fe42f90, th=<optimized out>, th@entry=0x7fec8c005240, threadWasBusy=threadWasBusy@entry=false, suspendIfInactive=suspendIfInactive@entry=false, justReturning=justReturning@entry=false) at ./src/weaver.cpp:561
#7  0x00007fecedc9bc1e in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x7fec8c005240, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:43
#8  0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x7fec8c005240, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#9  0x00007fecedc9bc79 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x7fec8c005240, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:49
#10 0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x7fec8c005240, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#11 0x00007fecedc99b93 in ThreadWeaver::Thread::run() (this=0x7fec8c005240) at ./src/thread.cpp:86
#12 0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x7fec8c005240) at thread/qthread_unix.cpp:329
#13 0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#14 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 26 (Thread 0x7feca49aa700 (LWP 62827)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560213228584) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x560213228530, cond=0x560213228558) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x560213228558, mutex=0x560213228530) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x560213228530) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x56020cb199e0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fecedc971bc in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=this@entry=0x56020fe42f90, th=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  0x00007fecedc97f40 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x56020fe42f90, th=<optimized out>, th@entry=0x5602131846d0, threadWasBusy=threadWasBusy@entry=false, suspendIfInactive=suspendIfInactive@entry=false, justReturning=justReturning@entry=false) at ./src/weaver.cpp:561
#7  0x00007fecedc9bc1e in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x5602131846d0, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:43
#8  0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x5602131846d0, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#9  0x00007fecedc9bc79 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x5602131846d0, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:49
#10 0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x5602131846d0, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#11 0x00007fecedc99b93 in ThreadWeaver::Thread::run() (this=0x5602131846d0) at ./src/thread.cpp:86
#12 0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x5602131846d0) at thread/qthread_unix.cpp:329
#13 0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#14 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 25 (Thread 0x7feca51ab700 (LWP 62826)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560213228584) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x560213228530, cond=0x560213228558) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x560213228558, mutex=0x560213228530) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x560213228530) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x56020cb199e0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fecedc971bc in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=this@entry=0x56020fe42f90, th=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  0x00007fecedc97f40 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x56020fe42f90, th=<optimized out>, th@entry=0x5602131bdac0, threadWasBusy=threadWasBusy@entry=false, suspendIfInactive=suspendIfInactive@entry=false, justReturning=justReturning@entry=false) at ./src/weaver.cpp:561
#7  0x00007fecedc9bc1e in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x5602131bdac0, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:43
#8  0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x5602131bdac0, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#9  0x00007fecedc9bc79 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x5602131bdac0, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:49
#10 0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x5602131bdac0, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#11 0x00007fecedc99b93 in ThreadWeaver::Thread::run() (this=0x5602131bdac0) at ./src/thread.cpp:86
#12 0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x5602131bdac0) at thread/qthread_unix.cpp:329
#13 0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#14 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 24 (Thread 0x7feca59ac700 (LWP 62825)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560213228584) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x560213228530, cond=0x560213228558) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x560213228558, mutex=0x560213228530) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x560213228530) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x56020cb199e0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fecedc971bc in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=this@entry=0x56020fe42f90, th=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  0x00007fecedc97f40 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x56020fe42f90, th=<optimized out>, th@entry=0x560213190a00, threadWasBusy=threadWasBusy@entry=false, suspendIfInactive=suspendIfInactive@entry=false, justReturning=justReturning@entry=false) at ./src/weaver.cpp:561
#7  0x00007fecedc9bc1e in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x560213190a00, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:43
#8  0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x560213190a00, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#9  0x00007fecedc9bc79 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x560213190a00, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:49
#10 0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x560213190a00, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#11 0x00007fecedc99b93 in ThreadWeaver::Thread::run() (this=0x560213190a00) at ./src/thread.cpp:86
#12 0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x560213190a00) at thread/qthread_unix.cpp:329
#13 0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#14 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 23 (Thread 0x7feca61ad700 (LWP 62824)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560213228584) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x560213228530, cond=0x560213228558) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x560213228558, mutex=0x560213228530) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x560213228530) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x56020cb199e0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fecedc971bc in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=this@entry=0x56020fe42f90, th=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  0x00007fecedc97f40 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x56020fe42f90, th=<optimized out>, th@entry=0x7fecc00029c0, threadWasBusy=threadWasBusy@entry=false, suspendIfInactive=suspendIfInactive@entry=false, justReturning=justReturning@entry=false) at ./src/weaver.cpp:561
#7  0x00007fecedc9bc1e in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x7fecc00029c0, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:43
#8  0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x7fecc00029c0, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#9  0x00007fecedc9bc79 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x7fecc00029c0, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:49
#10 0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x7fecc00029c0, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#11 0x00007fecedc99b93 in ThreadWeaver::Thread::run() (this=0x7fecc00029c0) at ./src/thread.cpp:86
#12 0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x7fecc00029c0) at thread/qthread_unix.cpp:329
#13 0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#14 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 22 (Thread 0x7feca69ae700 (LWP 62823)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560213228584) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x560213228530, cond=0x560213228558) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x560213228558, mutex=0x560213228530) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x560213228530) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x56020cb199e0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fecedc971bc in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=this@entry=0x56020fe42f90, th=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  0x00007fecedc97f40 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x56020fe42f90, th=<optimized out>, th@entry=0x56020fe47210, threadWasBusy=threadWasBusy@entry=true, suspendIfInactive=suspendIfInactive@entry=false, justReturning=justReturning@entry=false) at ./src/weaver.cpp:561
#7  0x00007fecedc9bc1e in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x56020fe47210, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:43
#8  0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x56020fe47210, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#9  0x00007fecedc99b93 in ThreadWeaver::Thread::run() (this=0x56020fe47210) at ./src/thread.cpp:86
#10 0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x56020fe47210) at thread/qthread_unix.cpp:329
#11 0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#12 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 21 (Thread 0x7feca71af700 (LWP 62822)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560213228584) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x560213228530, cond=0x560213228558) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x560213228558, mutex=0x560213228530) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x560213228530) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x56020cb199e0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fecedc971bc in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=this@entry=0x56020fe42f90, th=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  0x00007fecedc97f40 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x56020fe42f90, th=<optimized out>, th@entry=0x7fecc0003390, threadWasBusy=threadWasBusy@entry=false, suspendIfInactive=suspendIfInactive@entry=false, justReturning=justReturning@entry=false) at ./src/weaver.cpp:561
#7  0x00007fecedc9bc1e in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x7fecc0003390, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:43
#8  0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x7fecc0003390, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#9  0x00007fecedc9bc79 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x7fecc0003390, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:49
#10 0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x7fecc0003390, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#11 0x00007fecedc99b93 in ThreadWeaver::Thread::run() (this=0x7fecc0003390) at ./src/thread.cpp:86
#12 0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x7fecc0003390) at thread/qthread_unix.cpp:329
#13 0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#14 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 20 (Thread 0x7fecd8cd7700 (LWP 62821)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560213228584) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x560213228530, cond=0x560213228558) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x560213228558, mutex=0x560213228530) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x560213228530) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x56020cb199e0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fecedc971bc in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=this@entry=0x56020fe42f90, th=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  0x00007fecedc97f40 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x56020fe42f90, th=<optimized out>, th@entry=0x56021326a470, threadWasBusy=threadWasBusy@entry=false, suspendIfInactive=suspendIfInactive@entry=false, justReturning=justReturning@entry=false) at ./src/weaver.cpp:561
#7  0x00007fecedc9bc1e in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x56021326a470, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:43
#8  0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x56021326a470, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#9  0x00007fecedc9bc79 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x56021326bbc0, th=0x56021326a470, wasBusy=<optimized out>) at ./src/workinghardstate.cpp:49
#10 0x00007fecedc97102 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=<optimized out>, th=0x56021326a470, wasBusy=<optimized out>) at ./src/weaver.cpp:575
#11 0x00007fecedc99b93 in ThreadWeaver::Thread::run() (this=0x56021326a470) at ./src/thread.cpp:86
#12 0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x56021326a470) at thread/qthread_unix.cpp:329
#13 0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#14 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 19 (Thread 0x7fecbf7d6700 (LWP 62819)):
#0  __GI___libc_read (nbytes=16, buf=0x7fecbf7d5c10, fd=56) at ../sysdeps/unix/sysv/linux/read.c:26
#1  __GI___libc_read (fd=56, buf=buf@entry=0x7fecbf7d5c10, nbytes=nbytes@entry=16) at ../sysdeps/unix/sysv/linux/read.c:24
#2  0x00007fed18877b2f in read (__nbytes=16, __buf=0x7fecbf7d5c10, __fd=<optimized out>) at /usr/include/x86_64-linux-gnu/bits/unistd.h:44
#3  g_wakeup_acknowledge (wakeup=0x7feccc003950) at ../../../glib/gwakeup.c:210
#4  0x00007fed1882eebe in g_main_context_check (context=context@entry=0x560213a5ef80, max_priority=2147483647, fds=fds@entry=0x560213a61270, n_fds=n_fds@entry=1) at ../../../glib/gmain.c:3825
#5  0x00007fed1882f312 in g_main_context_iterate (context=0x560213a5ef80, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4044
#6  0x00007fed1882f6f3 in g_main_loop_run (loop=0x560213a5f070) at ../../../glib/gmain.c:4241
#7  0x00007fecee565f8a in gdbus_shared_thread_func (user_data=0x560213a5ef50) at ../../../gio/gdbusprivate.c:279
#8  0x00007fed18858ad1 in g_thread_proxy (data=0x7feca80020c0) at ../../../glib/gthread.c:807
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 18 (Thread 0x7fecbe21d700 (LWP 62818)):
#0  g_mutex_unlock (mutex=0x560213a51850) at ../../../glib/gthread-posix.c:1493
#1  0x00007fed1882f21d in g_main_context_iterate (context=context@entry=0x560213a51850, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:3995
#2  0x00007fed1882f4a3 in g_main_context_iteration (context=0x560213a51850, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#3  0x00007fed1882f4f1 in glib_worker_main (data=<optimized out>) at ../../../glib/gmain.c:5996
#4  0x00007fed18858ad1 in g_thread_proxy (data=0x7fecb0004700) at ../../../glib/gthread.c:807
#5  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 17 (Thread 0x7fecbc9fc700 (LWP 62784)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x5602115b3500) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5602115b34b0, cond=0x5602115b34d8) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x5602115b34d8, mutex=0x5602115b34b0) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x5602115b34b0) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=this@entry=0x56020e864248, mutex=mutex@entry=0x56020e864240, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fed1bfaa814 in QSGRenderThreadEventQueue::takeEvent(bool) (wait=true, this=0x56020e864238) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  QSGRenderThread::processEventsAndWaitForMore() (this=this@entry=0x56020e8641a0) at scenegraph/qsgthreadedrenderloop.cpp:936
#7  0x00007fed1bfaac89 in QSGRenderThread::run() (this=0x56020e8641a0) at scenegraph/qsgthreadedrenderloop.cpp:1053
#8  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x56020e8641a0) at thread/qthread_unix.cpp:329
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 16 (Thread 0x7fecbda1c700 (LWP 62611)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56020cc83e04) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56020cc83db0, cond=0x56020cc83dd8) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x56020cc83dd8, mutex=0x56020cc83db0) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x56020cc83db0) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=this@entry=0x56020a9043c8, mutex=mutex@entry=0x56020a9043c0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fed1bfaa814 in QSGRenderThreadEventQueue::takeEvent(bool) (wait=true, this=0x56020a9043b8) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  QSGRenderThread::processEventsAndWaitForMore() (this=this@entry=0x56020a904320) at scenegraph/qsgthreadedrenderloop.cpp:936
#7  0x00007fed1bfaac89 in QSGRenderThread::run() (this=0x56020a904320) at scenegraph/qsgthreadedrenderloop.cpp:1053
#8  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x56020a904320) at thread/qthread_unix.cpp:329
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 15 (Thread 0x7fecbefd5700 (LWP 60787)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56020c8beac4) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56020c8bea70, cond=0x56020c8bea98) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x56020c8bea98, mutex=0x56020c8bea70) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x56020c8bea70) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=this@entry=0x56020a6e9338, mutex=mutex@entry=0x56020a6e9330, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fed1bfaa814 in QSGRenderThreadEventQueue::takeEvent(bool) (wait=true, this=0x56020a6e9328) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  QSGRenderThread::processEventsAndWaitForMore() (this=this@entry=0x56020a6e9290) at scenegraph/qsgthreadedrenderloop.cpp:936
#7  0x00007fed1bfaac89 in QSGRenderThread::run() (this=0x56020a6e9290) at scenegraph/qsgthreadedrenderloop.cpp:1053
#8  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x56020a6e9290) at thread/qthread_unix.cpp:329
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 14 (Thread 0x7fecbffff700 (LWP 60741)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56020cc09514) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56020cc094c0, cond=0x56020cc094e8) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x56020cc094e8, mutex=0x56020cc094c0) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x56020cc094c0) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=this@entry=0x56020cf48dd8, mutex=mutex@entry=0x56020cf48dd0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fed1bfaa814 in QSGRenderThreadEventQueue::takeEvent(bool) (wait=true, this=0x56020cf48dc8) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  QSGRenderThread::processEventsAndWaitForMore() (this=this@entry=0x56020cf48d30) at scenegraph/qsgthreadedrenderloop.cpp:936
#7  0x00007fed1bfaac89 in QSGRenderThread::run() (this=0x56020cf48d30) at scenegraph/qsgthreadedrenderloop.cpp:1053
#8  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x56020cf48d30) at thread/qthread_unix.cpp:329
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 13 (Thread 0x7fecd9ff3700 (LWP 60723)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56020a749f44) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56020a749ef0, cond=0x56020a749f18) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x56020a749f18, mutex=0x56020a749ef0) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x56020a749ef0) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=this@entry=0x7fece8312358, mutex=mutex@entry=0x7fece8312350, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fed1bfaa814 in QSGRenderThreadEventQueue::takeEvent(bool) (wait=true, this=0x7fece8312348) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  QSGRenderThread::processEventsAndWaitForMore() (this=this@entry=0x7fece83122b0) at scenegraph/qsgthreadedrenderloop.cpp:936
#7  0x00007fed1bfaac89 in QSGRenderThread::run() (this=0x7fece83122b0) at scenegraph/qsgthreadedrenderloop.cpp:1053
#8  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x7fece83122b0) at thread/qthread_unix.cpp:329
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 12 (Thread 0x7fecdbf0a700 (LWP 60674)):
#0  0x00007fed19fd1aff in __GI___poll (fds=0x7fecd4006930, nfds=1, timeout=3496537) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fed1882f36e in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7fecd4006930, timeout=<optimized out>, context=0x7fecd4000c20) at ../../../glib/gmain.c:4346
#2  g_main_context_iterate (context=context@entry=0x7fecd4000c20, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4042
#3  0x00007fed1882f4a3 in g_main_context_iteration (context=0x7fecd4000c20, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#4  0x00007fed1a59effb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fecd4000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007fed1a5431eb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fecdbf09ca0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007fed1a35da52 in QThread::exec() (this=this@entry=0x56020a54fd70) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007fecec41807c in KCupsConnection::run() (this=0x56020a54fd70) at ./libkcups/KCupsConnection.cpp:303
#8  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x56020a54fd70) at thread/qthread_unix.cpp:329
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 11 (Thread 0x7fececd29700 (LWP 60670)):
#0  0x00007fed19fd1aff in __GI___poll (fds=0x7fecdc004a60, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fed1882f36e in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7fecdc004a60, timeout=<optimized out>, context=0x7fecdc000c20) at ../../../glib/gmain.c:4346
#2  g_main_context_iterate (context=context@entry=0x7fecdc000c20, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4042
#3  0x00007fed1882f4a3 in g_main_context_iteration (context=0x7fecdc000c20, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#4  0x00007fed1a59effb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fecdc000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007fed1a5431eb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fececd28ce0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007fed1a35da52 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x5602085362d0) at thread/qthread_unix.cpp:329
#8  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 0x7feceeffe700 (LWP 60662)):
#0  0x00007fed1887c518 in g_mutex_unlock (mutex=0x7fece0000c20) at ../../../glib/gthread-posix.c:1494
#1  0x00007fed1882e8e1 in g_main_context_prepare (context=context@entry=0x7fece0000c20, priority=priority@entry=0x7feceeffdb60) at ../../../glib/gmain.c:3617
#2  0x00007fed1882f29b in g_main_context_iterate (context=context@entry=0x7fece0000c20, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4027
#3  0x00007fed1882f4a3 in g_main_context_iteration (context=0x7fece0000c20, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#4  0x00007fed1a59effb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fece0000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007fed1a5431eb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7feceeffdca0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007fed1a35da52 in QThread::exec() (this=this@entry=0x560208426800) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007fed1bee538a in QQuickPixmapReader::run() (this=0x560208426800) at util/qquickpixmapcache.cpp:1024
#8  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x560208426800) at thread/qthread_unix.cpp:329
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7feceffff700 (LWP 60661)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560207e12790) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x560207e12740, cond=0x560207e12768) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x560207e12768, mutex=0x560207e12740) at pthread_cond_wait.c:647
#3  0x00007fed1a364d5b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x560207e12740) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=this@entry=0x7fed10008928, mutex=mutex@entry=0x7fed10008920, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007fed1bfaa814 in QSGRenderThreadEventQueue::takeEvent(bool) (wait=true, this=0x7fed10008918) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  QSGRenderThread::processEventsAndWaitForMore() (this=this@entry=0x7fed10008880) at scenegraph/qsgthreadedrenderloop.cpp:936
#7  0x00007fed1bfaac89 in QSGRenderThread::run() (this=0x7fed10008880) at scenegraph/qsgthreadedrenderloop.cpp:1053
#8  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x7fed10008880) at thread/qthread_unix.cpp:329
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7fecfbfff700 (LWP 60645)):
#0  0x00007fed19fd1aff in __GI___poll (fds=0x7fecf0004a60, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fed1882f36e in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7fecf0004a60, timeout=<optimized out>, context=0x7fecf0000c20) at ../../../glib/gmain.c:4346
#2  g_main_context_iterate (context=context@entry=0x7fecf0000c20, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4042
#3  0x00007fed1882f4a3 in g_main_context_iteration (context=0x7fecf0000c20, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#4  0x00007fed1a59effb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fecf0000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007fed1a5431eb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fecfbffecc0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007fed1a35da52 in QThread::exec() (this=this@entry=0x5602075fab80) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007fed1bb5bfa9 in QQmlThreadPrivate::run() (this=0x5602075fab80) at qml/ftw/qqmlthread.cpp:155
#8  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x5602075fab80) at thread/qthread_unix.cpp:329
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7fed0d676700 (LWP 60596)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560207157718) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5602071576c8, cond=0x5602071576f0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x5602071576f0, mutex=0x5602071576c8) at pthread_cond_wait.c:647
#3  0x00007fed0f515e6b in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007fed0f515a6b in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7fed0de77700 (LWP 60595)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560207157718) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5602071576c8, cond=0x5602071576f0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x5602071576f0, mutex=0x5602071576c8) at pthread_cond_wait.c:647
#3  0x00007fed0f515e6b in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007fed0f515a6b in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7fed0e678700 (LWP 60594)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x560207157718) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5602071576c8, cond=0x5602071576f0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x5602071576f0, mutex=0x5602071576c8) at pthread_cond_wait.c:647
#3  0x00007fed0f515e6b in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007fed0f515a6b in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7fed0ee79700 (LWP 60593)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56020715771c) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5602071576c8, cond=0x5602071576f0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x5602071576f0, mutex=0x5602071576c8) at pthread_cond_wait.c:647
#3  0x00007fed0f515e6b in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007fed0f515a6b in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7fed14a4b700 (LWP 60573)):
#0  0x00007fed19fd1aff in __GI___poll (fds=0x7fed08019880, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fed1882f36e in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7fed08019880, timeout=<optimized out>, context=0x7fed08000c20) at ../../../glib/gmain.c:4346
#2  g_main_context_iterate (context=context@entry=0x7fed08000c20, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4042
#3  0x00007fed1882f4a3 in g_main_context_iteration (context=0x7fed08000c20, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#4  0x00007fed1a59effb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fed08000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007fed1a5431eb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fed14a4acb0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007fed1a35da52 in QThread::exec() (this=this@entry=0x7fed1af51d80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007fed1aecdf4b in QDBusConnectionManager::run() (this=0x7fed1af51d80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:179
#8  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x7fed1af51d80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:329
#9  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7fed158d1700 (LWP 60510)):
#0  0x00007fed19fd1aff in __GI___poll (fds=fds@entry=0x7fed158d0be8, nfds=nfds@entry=1, timeout=timeout@entry=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fed1c5c7c1a in poll (__timeout=-1, __nfds=1, __fds=0x7fed158d0be8) at /usr/include/x86_64-linux-gnu/bits/poll2.h:46
#2  _xcb_conn_wait (c=c@entry=0x56020717b920, cond=cond@entry=0x56020717b960, vector=vector@entry=0x0, count=count@entry=0x0) at ../../src/xcb_conn.c:480
#3  0x00007fed1c5c990a in xcb_wait_for_event (c=c@entry=0x56020717b920) at ../../src/xcb_in.c:697
#4  0x00007fed15de0d58 in QXcbEventQueue::run() (this=0x56020716e8f0) at qxcbeventqueue.cpp:228
#5  0x00007fed1a35ebec in QThreadPrivate::start(void*) (arg=0x56020716e8f0) at thread/qthread_unix.cpp:329
#6  0x00007fed19261609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007fed19fde293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7fed161f58c0 (LWP 60490)):
[KCrash Handler]
#6  0x00007fecee6fe42b in QPulseAudio::Server::update(pa_server_info const*) (this=0x560208857000, info=0x0) at ./src/server.cpp:64
#7  0x00007fecee643809 in context_get_server_info_callback (pd=pd@entry=0x56020889c460, command=command@entry=1, tag=tag@entry=785, t=t@entry=0x0, userdata=userdata@entry=0x560213ab5340) at pulse/introspect.c:122
#8  0x00007fecee3a2be3 in run_action (pd=0x56020889c460, r=0x5602116c6240, command=1, ts=0x0) at pulsecore/pdispatch.c:288
#9  0x00007fecf800e51e in  () at /lib/x86_64-linux-gnu/libpulse-mainloop-glib.so.0
#10 0x00007fed1882f17d in g_main_dispatch (context=0x7fed10005000) at ../../../glib/gmain.c:3309
#11 g_main_context_dispatch (context=context@entry=0x7fed10005000) at ../../../glib/gmain.c:3974
#12 0x00007fed1882f400 in g_main_context_iterate (context=context@entry=0x7fed10005000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4047
#13 0x00007fed1882f4a3 in g_main_context_iteration (context=0x7fed10005000, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#14 0x00007fed1a59efe2 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x560207226790, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#15 0x00007fed1a5431eb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fff93cf0880, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#16 0x00007fed1a54b394 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#17 0x00005602052b2dfe in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at ./shell/main.cpp:251
[Inferior 1 (process 60490) detached]

Reported using DrKonqi
Comment 1 Nate Graham 2021-05-18 22:16:36 UTC
Are you using PipeWire on this system?
Comment 2 Patrick Silva 2021-05-18 22:27:57 UTC
I do not think so.
Enabling streaming over network is the only modification
that I did in sound settings of my neon unstable.
Comment 3 Nicolas Fella 2022-01-07 23:36:42 UTC
I have a vague theory of what is happening, but it's hard to tell exactly without reproducing the bug.

I think the Context object is destroyed at some point, and with it the Server object. Then we get a server update callback from PA, try to deliver that to the nonexistant server and boom
Comment 4 Nate Graham 2022-01-13 04:28:54 UTC
*** Bug 448095 has been marked as a duplicate of this bug. ***
Comment 5 Nicolas Fella 2022-03-15 13:01:57 UTC
*** Bug 451513 has been marked as a duplicate of this bug. ***
Comment 6 Nate Graham 2022-03-26 02:14:10 UTC
*** Bug 451581 has been marked as a duplicate of this bug. ***
Comment 7 Nicolas Fella 2022-07-16 19:46:06 UTC
*** Bug 456809 has been marked as a duplicate of this bug. ***
Comment 8 Harald Sitter 2022-10-11 11:24:44 UTC
Git commit e87f2b13c8701a5d332f7a84fe1a0c344204cbfb by Harald Sitter.
Committed on 11/10/2022 at 10:12.
Pushed by sitter into branch 'master'.

don't crash when the server doesn't respond

inside libpulse a non-reply (e.g. caused by a timeout) results in info
being a nullptr. when that happens simply skip over the callback. when
this happens chances are the server crashed or is otherwise defunct so
we won't be able to do much about this anyway

easy to test by attaching to both plasmashell and pulseaudio and
interrupting the latter when the former calls
pa_context_get_server_info. this results in the reply timeout getting
hit -> nullptr callback.

it is unclear if we can somehow recover from this but in lieu of a
reliable real world test case for this we at least shouldn't crash on
nullptr access.
Related: bug 454647

M  +6    -0    src/context.cpp

https://invent.kde.org/plasma/plasma-pa/commit/e87f2b13c8701a5d332f7a84fe1a0c344204cbfb
Comment 9 Harald Sitter 2022-10-11 23:58:18 UTC
Git commit 89d33990bbd4e63e4624a01fb0e74c341ac50fa4 by Harald Sitter.
Committed on 11/10/2022 at 23:58.
Pushed by sitter into branch 'Plasma/5.26'.

don't crash when the server doesn't respond

inside libpulse a non-reply (e.g. caused by a timeout) results in info
being a nullptr. when that happens simply skip over the callback. when
this happens chances are the server crashed or is otherwise defunct so
we won't be able to do much about this anyway

easy to test by attaching to both plasmashell and pulseaudio and
interrupting the latter when the former calls
pa_context_get_server_info. this results in the reply timeout getting
hit -> nullptr callback.

it is unclear if we can somehow recover from this but in lieu of a
reliable real world test case for this we at least shouldn't crash on
nullptr access.
Related: bug 454647


(cherry picked from commit e87f2b13c8701a5d332f7a84fe1a0c344204cbfb)

M  +6    -0    src/context.cpp

https://invent.kde.org/plasma/plasma-pa/commit/89d33990bbd4e63e4624a01fb0e74c341ac50fa4
Comment 10 Harald Sitter 2022-10-11 23:58:50 UTC
Git commit b33f3a4c0f4c5b7b7c193370165e799e38c9dddd by Harald Sitter.
Committed on 11/10/2022 at 23:58.
Pushed by sitter into branch 'Plasma/5.24'.

don't crash when the server doesn't respond

inside libpulse a non-reply (e.g. caused by a timeout) results in info
being a nullptr. when that happens simply skip over the callback. when
this happens chances are the server crashed or is otherwise defunct so
we won't be able to do much about this anyway

easy to test by attaching to both plasmashell and pulseaudio and
interrupting the latter when the former calls
pa_context_get_server_info. this results in the reply timeout getting
hit -> nullptr callback.

it is unclear if we can somehow recover from this but in lieu of a
reliable real world test case for this we at least shouldn't crash on
nullptr access.
Related: bug 454647


(cherry picked from commit e87f2b13c8701a5d332f7a84fe1a0c344204cbfb)

M  +6    -0    src/context.cpp

https://invent.kde.org/plasma/plasma-pa/commit/b33f3a4c0f4c5b7b7c193370165e799e38c9dddd