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

            Bug ID: 514595
           Summary: Powerdevil crashes on screen turning off as it tries
                    to adjust brightness
    Classification: Plasma
           Product: plasmashell
      Version First master
       Reported In:
          Platform: KDE Linux
                OS: Linux
            Status: REPORTED
          Keywords: drkonqi
          Severity: crash
          Priority: NOR
         Component: Power management & brightness
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: 1.0

Application: org_kde_powerdevil (6.6.80)

ApplicationNotResponding [ANR]: false
Qt Version: 6.10.1
Frameworks Version: 6.23.0
Operating System: Linux 6.18.5-zen1-1-zen x86_64
Windowing System: Wayland
Distribution: "Arch Linux"
DrKonqi: 6.6.80 [CoredumpBackend]

-- Information about the crash:
Powerdevil seems to try to adjust brightness when the screen is off or not
detected at all,
causing powerdevil to crash.

The problem is likely with `display->m_displayRef` being null.

This happens to me every time I let the session automatically lock screen, and
then the screen turns
off during the lock screen.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KDE Power Management System (org_kde_powerdevil), signal: Aborted

Downloading 4.29 M separate debug info for /usr/lib/org_kde_powerdevil...

warning: Can't open file /share/qt6/translations/qt_en.qm during file-backed
mapping note processing

warning: Can't open file /share/locale/en/LC_MESSAGES/kcoreaddons6_qt.qm during
file-backed mapping note processing

warning: Can't open file /share/locale/en/LC_MESSAGES/kwidgetsaddons6_qt.qm
during file-backed mapping note processing
[New LWP 5271]
[New LWP 2356]
[New LWP 2379]
[New LWP 2383]
[New LWP 2384]
[New LWP 5269]
[New LWP 2385]
[New LWP 2375]
[New LWP 2380]
[New LWP 5270]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Core was generated by `/usr/lib/org_kde_powerdevil'.
Program terminated with signal SIGABRT, Aborted.
#0  __pthread_kill_implementation (threadid=<optimized out>,
signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
44            return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO
(ret) : 0;
[Current thread is 1 (Thread 0x7f2bca7fc6c0 (LWP 5271))]
Using eu-unstrip to resolve modules.
add symbol table from file "/usr/lib/libc.so.6"
add symbol table from file "/usr/lib/libKF6Crash.so.6"
add symbol table from file "/usr/lib/libddcutil.so.5"
Downloading 20.18 M separate debug info for /usr/lib/libpowerdevilcore.so.2...
add symbol table from file "/usr/lib/libpowerdevilcore.so.2"
add symbol table from file "/usr/lib/libQt6Core.so.6"
add symbol table from file "/usr/lib/libglib-2.0.so.0"
Downloading 9.73 K source file
/usr/src/debug/kde-banana-powerdevil-git/powerdevil/daemon/controllers/ddcutildisplay.cpp...
Downloading 3.38 K source file /usr/src/debug/glibc/glibc/assert/assert.c...
add symbol table from file "/lib/org_kde_powerdevil"
Downloading 4.94 K source file
/usr/src/debug/kde-banana-powerdevil-git/powerdevil/daemon/powerdevilapp.cpp...
Downloading 9.92 K source file
/usr/src/debug/kde-banana-powerdevil-git/powerdevil/daemon/controllers/ddcutildetector.cpp...
Downloading 4.80 K source file
/usr/src/debug/glibc/glibc/nptl/pthread_join_common.c...
add symbol table from file "/usr/lib/libQt6WaylandClient.so.6"
Downloading 1.49 K source file
/usr/src/debug/glibc/glibc/misc/../sysdeps/unix/sysv/linux/x86_64/syscall.S...
Downloading 10.58 M separate debug info for /usr/lib/libgio-2.0.so.0...
add symbol table from file "/usr/lib/libgio-2.0.so.0"
Downloading 81.02 K source file
/usr/src/debug/glib2/build/../glib/gio/gdbusprivate.c...
add symbol table from file "/usr/lib/libQt6DBus.so.6"
Downloading 1.23 K source file
/usr/src/debug/glibc/glibc/misc/../sysdeps/posix/usleep.c...
Downloading 1.51 K source file
/usr/src/debug/glibc/glibc/posix/../sysdeps/unix/sysv/linux/nanosleep.c...
Downloading 3.14 K source file
/usr/src/debug/glibc/glibc/time/../sysdeps/unix/sysv/linux/clock_nanosleep.c...
[Current thread is 10 (Thread 0x7f2bcbfff6c0 (LWP 5270))]

Thread 10 (Thread 0x7f2bcbfff6c0 (LWP 5270)):
#0  __syscall_cancel_arch () at
../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1  0x00007f2bec3c116c in __internal_syscall_cancel (a1=<optimized out>,
a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>,
a6=<optimized out>, nr=230) at cancellation.c:49
#2  0x00007f2bec411bd2 in __GI___clock_nanosleep (clock_id=<optimized out>,
flags=<optimized out>, req=<optimized out>, rem=<optimized out>) at
../sysdeps/unix/sysv/linux/clock_nanosleep.c:48
#3  0x00007f2bec41dc57 in __GI___nanosleep (req=<optimized out>, rem=<optimized
out>) at ../sysdeps/unix/sysv/linux/nanosleep.c:25
#4  0x00007f2bec44853a in usleep (useconds=<optimized out>) at
../sysdeps/posix/usleep.c:31
#5  0x00007f2bec840966 in loggable_sleep (millisec=millisec@entry=100,
opts=opts@entry=(SLEEP_OPT_TRACEABLE | SLEEP_OPT_STATS),
syslog_level=syslog_level@entry=DDCA_SYSLOG_NEVER,
func=func@entry=0x7f2bec8ae3a0 <__func__.4.lto_priv.28>
"tuned_sleep_with_trace", lineno=lineno@entry=335,
filename=filename@entry=0x7f2bec87f148 "tuned_sleep.c", format=0x7f2bcbffdfb0
"Event type: SE_WRITE_TO_READ, Called from ddc_i2c_write_read_raw") at
base/sleep.c:136
#6  0x00007f2bec84153f in tuned_sleep_with_trace (dh=<optimized out>,
event_type=<optimized out>, special_sleep_time_millis=<optimized out>,
func=<optimized out>, lineno=<optimized out>, filename=<optimized out>,
msg=0x7f2bec890ff0 "Called from ddc_i2c_write_read_raw") at
base/tuned_sleep.c:335
#7  0x00007f2bec7f3dad in ddc_i2c_write_read_raw (dh=dh@entry=0x7f2bc400d850,
request_packet_ptr=request_packet_ptr@entry=0x7f2bc401e220,
read_bytewise=read_bytewise@entry=false,
max_read_bytes=max_read_bytes@entry=40, readbuf=readbuf@entry=0x7f2bc4021730
"", pbytes_received=pbytes_received@entry=0x7f2bcbffe0e4) at
ddc/ddc_packet_io.c:699
#8  0x00007f2bec7f4689 in ddc_write_read (dh=dh@entry=0x7f2bc400d850,
request_packet_ptr=request_packet_ptr@entry=0x7f2bc401e220,
read_bytewise=read_bytewise@entry=false, max_read_bytes=40,
max_read_bytes@entry=39, expected_response_type=expected_response_type@entry=2
'\002', expected_subtype=expected_subtype@entry=221 '\335',
response_packet_ptr_loc=0x7f2bcbffe330) at ddc/ddc_packet_io.c:774
#9  0x00007f2bec7fb100 in ddc_write_read_with_retry (dh=0x7f2bc400d850,
request_packet_ptr=0x7f2bc401e220, max_read_bytes=39, expected_response_type=2
'\002', expected_subtype=<optimized out>, flags=Write_Read_Flags_None,
response_packet_ptr_loc=0x7f2bcbffe330) at ddc/ddc_packet_io.c:881
#10 0x00007f2bec7fcece in ddc_get_nontable_vcp_value (dh=0x7f2bc400d850,
feature_code=<optimized out>, parsed_response_loc=0x7f2bcbffe3b0) at
ddc/ddc_vcp.c:232
#11 0x00007f2bec7e8f3f in read_unsupported_feature (dh=dh@entry=0x7f2bc400d850,
feature_code=feature_code@entry=221 '\335') at ddc/ddc_initial_checks.c:123
#12 0x00007f2bec7e9844 in check_how_unsupported_reported (dh=0x7f2bc400d850) at
ddc/ddc_initial_checks.c:215
#13 0x00007f2bec7eadd8 in ddc_initial_checks_by_dh (dh=0x7f2bc400d850,
newly_added=newly_added@entry=true) at ddc/ddc_initial_checks.c:508
#14 0x00007f2bec7eb5dd in ddc_initial_checks_by_dref (dref=0x7f2bc4021790,
newly_added=<optimized out>) at ddc/ddc_initial_checks.c:599
#15 0x00007f2bec8504ed in dw_add_display_by_businfo
(businfo=businfo@entry=0x55c02ae0a880) at dw/dw_dref.c:135
#16 0x00007f2bec855f8e in dw_hotplug_change_handler
(bs_buses_w_edid_removed=..., bs_buses_w_edid_added=...,
events_queue=events_queue@entry=0x0,
drefs_to_recheck=drefs_to_recheck@entry=0x7f2bc4000c50) at dw/dw_common.c:423
#17 0x00007f2bec8570ac in process_screen_change_event
(p_bs_attached_buses=p_bs_attached_buses@entry=0x7f2bcbffe910,
p_bs_buses_w_edid=p_bs_buses_w_edid@entry=0x7f2bcbffe8f0,
deferred_events=deferred_events@entry=0x0,
displays_to_recheck=displays_to_recheck@entry=0x7f2bc4000c50) at
dw/dw_poll.c:145
#18 0x00007f2bec858e61 in dw_watch_display_connections (data=<optimized out>)
at dw/dw_poll.c:326
#19 0x00007f2beb9db8bc in g_thread_proxy (data=0x55c02ae185e0) at
../glib/glib/gthread.c:893
#20 0x00007f2bec3c498b in start_thread (arg=<optimized out>) at
pthread_create.c:448
#21 0x00007f2bec4489cc in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Thread 9 (Thread 0x7f2be2d5d6c0 (LWP 2380)):
#0  __syscall_cancel_arch () at
../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1  0x00007f2bec3c116c in __internal_syscall_cancel (a1=<optimized out>,
a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>,
a6=<optimized out>, nr=7) at cancellation.c:49
#2  0x00007f2bec3c11b4 in __syscall_cancel (a1=<optimized out>, a2=<optimized
out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>, a6=<optimized
out>, nr=7) at cancellation.c:75
#3  0x00007f2bec43b4ae in __GI___poll (fds=fds@entry=0x7f2be2d5c900,
nfds=nfds@entry=2, timeout=timeout@entry=-1) at
../sysdeps/unix/sysv/linux/poll.c:29
#4  0x00007f2bebc8adb5 in poll (__fds=0x7f2be2d5c900, __nfds=2, __timeout=-1)
at /usr/include/bits/poll2.h:44
#5  QtWaylandClient::EventThread::run (this=0x55c02aca7d70) at
/usr/src/debug/qt6-base/qtbase/src/plugins/platforms/wayland/qwaylanddisplay.cpp:185
#6  0x00007f2becc03899 in operator() (__closure=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:437
#7  (anonymous
namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> >
(t=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:367
#8  QThreadPrivate::start (arg=0x55c02aca7d70) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:397
#9  0x00007f2bec3c498b in start_thread (arg=<optimized out>) at
pthread_create.c:448
#10 0x00007f2bec4489cc in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Thread 8 (Thread 0x7f2be3d7a6c0 (LWP 2375)):
#0  __syscall_cancel_arch () at
../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1  0x00007f2bec3c116c in __internal_syscall_cancel (a1=<optimized out>,
a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>,
a6=<optimized out>, nr=271) at cancellation.c:49
#2  0x00007f2bec3c11b4 in __syscall_cancel (a1=<optimized out>, a2=<optimized
out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>, a6=<optimized
out>, nr=271) at cancellation.c:75
#3  0x00007f2bec43b9f6 in __GI_ppoll (fds=fds@entry=0x55c02acc6120,
nfds=nfds@entry=4, timeout=<optimized out>, timeout@entry=0x0,
sigmask=sigmask@entry=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:42
#4  0x00007f2beb9a4784 in ppoll (__fds=0x55c02acc6120, __nfds=4, __timeout=0x0,
__ss=0x0) at /usr/include/bits/poll2.h:101
#5  g_main_context_poll_unlocked (priority=<optimized out>,
context=0x7f2bdc000d00, timeout_usec=<optimized out>, fds=0x55c02acc6120,
n_fds=4) at ../glib/glib/gmain.c:4811
#6  g_main_context_iterate_unlocked (context=context@entry=0x7f2bdc000d00,
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at
../glib/glib/gmain.c:4485
#7  0x00007f2beb9a4865 in g_main_context_iteration (context=0x7f2bdc000d00,
may_block=1) at ../glib/glib/gmain.c:4556
#8  0x00007f2becd1c152 in QEventDispatcherGlib::processEvents
(this=0x7f2bdc000be0, flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#9  0x00007f2beca49786 in QEventLoop::processEvents (this=0x7f2be3d798b0,
flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:104
#10 QEventLoop::exec (this=0x7f2be3d798b0, flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:186
#11 0x00007f2becb6441e in QThread::exec (this=this@entry=0x7f2becfc9e20
<QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager>
>::instance()::holder>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread.cpp:672
#12 0x00007f2becf4103e in QDBusConnectionManager::run (this=0x7f2becfc9e20
<QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager>
>::instance()::holder>) at
/usr/src/debug/qt6-base/qtbase/src/dbus/qdbusconnectionmanager.cpp:145
#13 0x00007f2becc03899 in operator() (__closure=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:437
#14 (anonymous
namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> >
(t=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:367
#15 QThreadPrivate::start (arg=0x7f2becfc9e20
<QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager>
>::instance()::holder>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:397
#16 0x00007f2bec3c498b in start_thread (arg=<optimized out>) at
pthread_create.c:448
#17 0x00007f2bec4489cc in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Thread 7 (Thread 0x7f2be14f06c0 (LWP 2385)):
#0  __syscall_cancel_arch () at
../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1  0x00007f2bec3c116c in __internal_syscall_cancel (a1=<optimized out>,
a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>,
a6=<optimized out>, nr=271) at cancellation.c:49
#2  0x00007f2bec3c11b4 in __syscall_cancel (a1=<optimized out>, a2=<optimized
out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>, a6=<optimized
out>, nr=271) at cancellation.c:75
#3  0x00007f2bec43b9f6 in __GI_ppoll (fds=fds@entry=0x7f2bd0000c20,
nfds=nfds@entry=2, timeout=<optimized out>, timeout@entry=0x0,
sigmask=sigmask@entry=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:42
#4  0x00007f2beb9a4784 in ppoll (__fds=0x7f2bd0000c20, __nfds=2, __timeout=0x0,
__ss=0x0) at /usr/include/bits/poll2.h:101
#5  g_main_context_poll_unlocked (priority=<optimized out>,
context=0x55c02acd5030, timeout_usec=<optimized out>, fds=0x7f2bd0000c20,
n_fds=2) at ../glib/glib/gmain.c:4811
#6  g_main_context_iterate_unlocked (context=0x55c02acd5030,
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at
../glib/glib/gmain.c:4485
#7  0x00007f2beb9a4a17 in g_main_loop_run (loop=0x55c02acd7150) at
../glib/glib/gmain.c:4695
#8  0x00007f2be44de2e4 in gdbus_shared_thread_func (user_data=0x55c02acd6d20)
at ../glib/gio/gdbusprivate.c:284
#9  0x00007f2beb9db8bc in g_thread_proxy (data=0x55c02acd5200) at
../glib/glib/gthread.c:893
#10 0x00007f2bec3c498b in start_thread (arg=<optimized out>) at
pthread_create.c:448
#11 0x00007f2bec4489cc in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Thread 6 (Thread 0x7f2be0cef6c0 (LWP 5269)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f2beb9d47be in g_cond_wait_until_impl (cond=<optimized out>,
mutex=0x7f2bbc02e1b0, end_time=<optimized out>) at
../glib/glib/gthread-posix.c:1159
#2  g_cond_wait_until (cond=<optimized out>, mutex=0x7f2bbc02e1b0,
end_time=<optimized out>) at ../glib/glib/gthread.c:1782
#3  0x00007f2beb96a197 in g_async_queue_pop_intern_unlocked
(queue=0x7f2bbc02e1b0, wait=1, end_time=11607386993) at
../glib/glib/gasyncqueue.c:379
#4  0x00007f2beb96a30f in g_async_queue_timeout_pop (queue=0x7f2bbc02e1b0,
timeout=timeout@entry=100000) at ../glib/glib/gasyncqueue.c:502
#5  0x00007f2bec857488 in dw_recheck_displays_func (data=0x55c02ad5ffb0) at
dw/dw_recheck.c:162
#6  0x00007f2beb9db8bc in g_thread_proxy (data=0x55c02adcc0a0) at
../glib/glib/gthread.c:893
#7  0x00007f2bec3c498b in start_thread (arg=<optimized out>) at
pthread_create.c:448
#8  0x00007f2bec4489cc in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Thread 5 (Thread 0x7f2be1cf16c0 (LWP 2384)):
#0  __syscall_cancel_arch () at
../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1  0x00007f2bec3c116c in __internal_syscall_cancel (a1=<optimized out>,
a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>,
a6=<optimized out>, nr=271) at cancellation.c:49
#2  0x00007f2bec3c11b4 in __syscall_cancel (a1=<optimized out>, a2=<optimized
out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>, a6=<optimized
out>, nr=271) at cancellation.c:75
#3  0x00007f2bec43b9f6 in __GI_ppoll (fds=fds@entry=0x7f2bcc000be0,
nfds=nfds@entry=1, timeout=<optimized out>, timeout@entry=0x0,
sigmask=sigmask@entry=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:42
#4  0x00007f2beb9a4784 in ppoll (__fds=0x7f2bcc000be0, __nfds=1, __timeout=0x0,
__ss=0x0) at /usr/include/bits/poll2.h:101
#5  g_main_context_poll_unlocked (priority=<optimized out>,
context=0x55c02acc43f0, timeout_usec=<optimized out>, fds=0x7f2bcc000be0,
n_fds=1) at ../glib/glib/gmain.c:4811
#6  g_main_context_iterate_unlocked (context=context@entry=0x55c02acc43f0,
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at
../glib/glib/gmain.c:4485
#7  0x00007f2beb9a4865 in g_main_context_iteration (context=0x55c02acc43f0,
may_block=may_block@entry=1) at ../glib/glib/gmain.c:4556
#8  0x00007f2beb9a48b2 in glib_worker_main (data=<optimized out>) at
../glib/glib/gmain.c:6764
#9  0x00007f2beb9db8bc in g_thread_proxy (data=0x55c02acca870) at
../glib/glib/gthread.c:893
#10 0x00007f2bec3c498b in start_thread (arg=<optimized out>) at
pthread_create.c:448
#11 0x00007f2bec4489cc in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Thread 4 (Thread 0x7f2be24f26c0 (LWP 2383)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f2beb9d382e in g_cond_wait_impl (cond=0x55c02acca578,
mutex=0x55c02acca570) at ../glib/glib/gthread-posix.c:1026
#2  g_cond_wait (cond=0x55c02acca578, mutex=0x55c02acca570) at
../glib/glib/gthread.c:1686
#3  0x00007f2beb96a1cd in g_async_queue_pop_intern_unlocked
(queue=0x55c02acca570, wait=1, end_time=-1) at ../glib/glib/gasyncqueue.c:376
#4  0x00007f2beb9dc487 in g_thread_pool_spawn_thread (data=<optimized out>) at
../glib/glib/gthreadpool.c:297
#5  0x00007f2beb9db8bc in g_thread_proxy (data=0x55c02acca5c0) at
../glib/glib/gthread.c:893
#6  0x00007f2bec3c498b in start_thread (arg=<optimized out>) at
pthread_create.c:448
#7  0x00007f2bec4489cc in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Thread 3 (Thread 0x7f2be355e6c0 (LWP 2379)):
#0  __syscall_cancel_arch () at
../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1  0x00007f2bec3c116c in __internal_syscall_cancel (a1=<optimized out>,
a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>,
a6=<optimized out>, nr=202) at cancellation.c:49
#2  0x00007f2bec3c17dc in __futex_abstimed_wait_common64 (private=<optimized
out>, futex_word=<optimized out>, expected=<optimized out>, op=<optimized out>,
abstime=<optimized out>, cancel=<optimized out>) at futex-internal.c:57
#3  __futex_abstimed_wait_common (futex_word=<optimized out>,
expected=<optimized out>, clockid=<optimized out>, abstime=<optimized out>,
private=<optimized out>, cancel=<optimized out>) at futex-internal.c:87
#4  0x00007f2bec3c3e9e in __pthread_cond_wait_common (cond=0x55c02acb2688,
mutex=0x55c02acb2660, clockid=0, abstime=0x0) at pthread_cond_wait.c:421
#5  ___pthread_cond_wait (cond=0x55c02acb2688, mutex=0x55c02acb2660) at
pthread_cond_wait.c:453
#6  0x00007f2becc07e69 in QWaitConditionPrivate::wait (this=0x55c02acb2660,
deadline=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:68
#7  QWaitCondition::wait (this=this@entry=0x55c02ac7acb0,
mutex=mutex@entry=0x55c02ac7aca8, deadline=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qwaitcondition_unix.cpp:146
#8  0x00007f2bebc8ad49 in QtWaylandClient::EventThread::waitForReading
(this=0x55c02ac7ac70) at
/usr/src/debug/qt6-base/qtbase/src/plugins/platforms/wayland/qwaylanddisplay.cpp:219
#9  QtWaylandClient::EventThread::run (this=0x55c02ac7ac70) at
/usr/src/debug/qt6-base/qtbase/src/plugins/platforms/wayland/qwaylanddisplay.cpp:180
#10 0x00007f2becc03899 in operator() (__closure=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:437
#11 (anonymous
namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> >
(t=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:367
#12 QThreadPrivate::start (arg=0x55c02ac7ac70) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:397
#13 0x00007f2bec3c498b in start_thread (arg=<optimized out>) at
pthread_create.c:448
#14 0x00007f2bec4489cc in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Thread 2 (Thread 0x7f2be4052c00 (LWP 2356)):
#0  __syscall_cancel_arch () at
../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1  0x00007f2bec3c116c in __internal_syscall_cancel (a1=<optimized out>,
a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=<optimized out>,
a6=<optimized out>, nr=202) at cancellation.c:49
#2  0x00007f2bec3c17dc in __futex_abstimed_wait_common64 (private=<optimized
out>, futex_word=<optimized out>, expected=<optimized out>, op=<optimized out>,
abstime=<optimized out>, cancel=<optimized out>) at futex-internal.c:57
#3  __futex_abstimed_wait_common (futex_word=<optimized out>,
expected=<optimized out>, clockid=<optimized out>, abstime=<optimized out>,
private=<optimized out>, cancel=<optimized out>) at futex-internal.c:87
#4  0x00007f2bec3c670c in __pthread_clockjoin_ex (threadid=139826057692864,
thread_return=0x0, clockid=1, abstime=0x0, block=<optimized out>) at
pthread_join_common.c:108
#5  0x00007f2becc01036 in operator() (__closure=<synthetic pointer>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:952
#6  QThreadPrivate::wait (this=0x55c02adb8c60, locker=..., deadline=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:974
#7  0x00007f2becb5fed3 in QThread::wait (this=this@entry=0x55c02ad24ab8,
deadline=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread.cpp:974
#8  0x00007f2bedae09f1 in DDCutilDisplay::~DDCutilDisplay (this=<optimized
out>, this=<optimized out>) at
/usr/src/debug/kde-banana-powerdevil-git/powerdevil/daemon/controllers/ddcutildisplay.cpp:132
#9  0x00007f2bedae0ff6 in DDCutilDisplay::~DDCutilDisplay (this=<optimized
out>, this=<optimized out>) at
/usr/src/debug/kde-banana-powerdevil-git/powerdevil/daemon/controllers/ddcutildisplay.cpp:128
#10 std::default_delete<DDCutilDisplay>::operator() (this=<optimized out>,
__ptr=0x55c02ad24a60) at /usr/include/c++/15.2.1/bits/unique_ptr.h:92
#11 std::unique_ptr<DDCutilDisplay, std::default_delete<DDCutilDisplay>
>::~unique_ptr (this=<optimized out>, this=<optimized out>) at
/usr/include/c++/15.2.1/bits/unique_ptr.h:398
#12 std::pair<QString const, std::unique_ptr<DDCutilDisplay,
std::default_delete<DDCutilDisplay> > >::~pair (this=<optimized out>,
this=<optimized out>) at /usr/include/c++/15.2.1/bits/stl_pair.h:302
#13 std::destroy_at<std::pair<QString const, std::unique_ptr<DDCutilDisplay,
std::default_delete<DDCutilDisplay> > > > (__location=0x55c02adcc360) at
/usr/include/c++/15.2.1/bits/stl_construct.h:88
#14 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<QString
const, std::unique_ptr<DDCutilDisplay, std::default_delete<DDCutilDisplay> > >
> > >::destroy<std::pair<QString const, std::unique_ptr<DDCutilDisplay,
std::default_delete<DDCutilDisplay> > > > (__a=<synthetic pointer>...,
__p=0x55c02adcc360) at /usr/include/c++/15.2.1/bits/alloc_traits.h:698
#15 std::_Node_handle_common<std::pair<QString const,
std::unique_ptr<DDCutilDisplay, std::default_delete<DDCutilDisplay> > >,
std::allocator<std::_Rb_tree_node<std::pair<QString const,
std::unique_ptr<DDCutilDisplay, std::default_delete<DDCutilDisplay> > > > >
>::_M_reset (this=<synthetic pointer>) at
/usr/include/c++/15.2.1/bits/node_handle.h:169
#16 std::_Node_handle_common<std::pair<QString const,
std::unique_ptr<DDCutilDisplay, std::default_delete<DDCutilDisplay> > >,
std::allocator<std::_Rb_tree_node<std::pair<QString const,
std::unique_ptr<DDCutilDisplay, std::default_delete<DDCutilDisplay> > > > >
>::~_Node_handle_common (this=<optimized out>, this=<optimized out>) at
/usr/include/c++/15.2.1/bits/node_handle.h:92
#17 std::_Node_handle<QString, std::pair<QString const,
std::unique_ptr<DDCutilDisplay, std::default_delete<DDCutilDisplay> > >,
std::allocator<std::_Rb_tree_node<std::pair<QString const,
std::unique_ptr<DDCutilDisplay, std::default_delete<DDCutilDisplay> > > > >
>::~_Node_handle (this=<optimized out>, this=<optimized out>) at
/usr/include/c++/15.2.1/bits/node_handle.h:259
#18 DDCutilPrivateSingleton::removeDisplay (this=<optimized out>, id=...) at
/usr/src/debug/kde-banana-powerdevil-git/powerdevil/daemon/controllers/ddcutildetector.cpp:248
#19 0x00007f2beca98994 in QObject::event (this=<optimized out>, e=<optimized
out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:1413
#20 0x00007f2beca3e958 in QCoreApplication::notifyInternal2
(receiver=0x7f2bedb115c0 <DDCutilPrivateSingleton::instance()::singleton>,
event=event@entry=0x7f2bb40014b0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1109
#21 0x00007f2beca3ed30 in QCoreApplication::sendEvent (receiver=<optimized
out>, event=0x7f2bb40014b0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1549
#22 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0,
data=0x55c02ac720a0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1904
#23 0x00007f2becd1ee18 in QCoreApplication::sendPostedEvents (receiver=0x0,
event_type=0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1757
#24 postEventSourceDispatch (s=0x55c02ac7b0d0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:246
#25 0x00007f2beb9a2f8d in g_main_dispatch (context=0x7f2bdc000f60) at
../glib/glib/gmain.c:3565
#26 0x00007f2beb9a4657 in g_main_context_dispatch_unlocked
(context=0x7f2bdc000f60) at ../glib/glib/gmain.c:4425
#27 g_main_context_iterate_unlocked (context=context@entry=0x7f2bdc000f60,
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at
../glib/glib/gmain.c:4490
#28 0x00007f2beb9a4865 in g_main_context_iteration (context=0x7f2bdc000f60,
may_block=1) at ../glib/glib/gmain.c:4556
#29 0x00007f2becd1c152 in QEventDispatcherGlib::processEvents
(this=0x55c02ac7a870, flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#30 0x00007f2beca49786 in QEventLoop::processEvents (this=0x7ffcaec265f0,
flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:104
#31 QEventLoop::exec (this=0x7ffcaec265f0, flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:186
#32 0x00007f2beca433f1 in QCoreApplication::exec () at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1452
#33 0x000055bfecafed69 in main (argc=<optimized out>, argv=<optimized out>) at
/usr/src/debug/kde-banana-powerdevil-git/powerdevil/daemon/powerdevilapp.cpp:142

Thread 1 (Thread 0x7f2bca7fc6c0 (LWP 5271)):
[KCrash Handler]
#4  __pthread_kill_implementation (threadid=<optimized out>, signo=6,
no_tid=<optimized out>) at pthread_kill.c:44
#5  0x00007f2bec36c3a0 in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26
#6  0x00007f2bec35357a in __GI_abort () at abort.c:77
#7  0x00007f2bec3534e3 in __assert_fail_base (fmt=<optimized out>,
assertion=<optimized out>, file=<optimized out>, line=<optimized out>,
function=<optimized out>) at assert.c:118
#8  0x00007f2bec364290 in __assert_fail (assertion=<optimized out>,
file=<optimized out>, line=<optimized out>, function=<optimized out>) at
assert.c:127
#9  0x00007f2bec7dc798 in ddc_open_display (dref=<optimized out>,
callopts=<optimized out>, dh_loc=<optimized out>) at ddc/ddc_packet_io.c:372
#10 0x00007f2bec864924 in ddci_open_display3 (ddca_dref=0x3,
options=options@entry=DDC_OPENOPT_WAIT, dh_loc=dh_loc@entry=0x7f2bca7fb430) at
libmain/api_displays.c:660
#11 0x00007f2bec868d3d in ddca_open_display2 (ddca_dref=<optimized out>,
wait=true, dh_loc=0x7f2bca7fb430) at libmain/api_displays.c:692
#12 0x00007f2bedada5fd in BrightnessWorker::ddcSetBrightness
(this=0x55c02ada6d90, value=30, display=0x55c02ad24a60) at
/usr/src/debug/kde-banana-powerdevil-git/powerdevil/daemon/controllers/ddcutildisplay.cpp:240
#13 0x00007f2beca98994 in QObject::event (this=<optimized out>, e=<optimized
out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:1413
#14 0x00007f2beca3e958 in QCoreApplication::notifyInternal2
(receiver=0x55c02ada6d90, event=event@entry=0x7f2bdc020260) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1109
#15 0x00007f2beca3ed30 in QCoreApplication::sendEvent (receiver=<optimized
out>, event=0x7f2bdc020260) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1549
#16 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0,
data=0x55c02ae0b2a0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1904
#17 0x00007f2becd1ee18 in QCoreApplication::sendPostedEvents (receiver=0x0,
event_type=0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1757
#18 postEventSourceDispatch (s=0x7f2bc0000c60) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:246
#19 0x00007f2beb9a2f8d in g_main_dispatch (context=0x7f2bc00009e0) at
../glib/glib/gmain.c:3565
#20 0x00007f2beb9a4657 in g_main_context_dispatch_unlocked
(context=0x7f2bc00009e0) at ../glib/glib/gmain.c:4425
#21 g_main_context_iterate_unlocked (context=context@entry=0x7f2bc00009e0,
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at
../glib/glib/gmain.c:4490
#22 0x00007f2beb9a4865 in g_main_context_iteration (context=0x7f2bc00009e0,
may_block=1) at ../glib/glib/gmain.c:4556
#23 0x00007f2becd1c152 in QEventDispatcherGlib::processEvents
(this=0x7f2bc00013c0, flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#24 0x00007f2beca49786 in QEventLoop::processEvents (this=0x7f2bca7fb900,
flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:104
#25 QEventLoop::exec (this=0x7f2bca7fb900, flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:186
#26 0x00007f2becb6441e in QThread::exec (this=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread.cpp:672
#27 0x00007f2becc03899 in operator() (__closure=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:437
#28 (anonymous
namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> >
(t=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:367
#29 QThreadPrivate::start (arg=0x55c02ad24ab8) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:397
#30 0x00007f2bec3c498b in start_thread (arg=<optimized out>) at
pthread_create.c:448
#31 0x00007f2bec4489cc in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Reported using DrKonqi

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to