https://bugs.kde.org/show_bug.cgi?id=501113
Bug ID: 501113 Summary: KWin asserts in qCeil Classification: Plasma Product: kwin Version: master Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: core Assignee: kwin-bugs-n...@kde.org Reporter: nicolas.fe...@gmx.de Target Milestone: --- When starting the session #0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 #1 0x00007f43e5a9b453 in __pthread_kill_internal (threadid=<optimized out>, signo=6) at pthread_kill.c:89 #2 0x00007f43e5a41cb6 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #3 0x00007f43e5a2938b in __GI_abort () at abort.c:73 #4 0x00007f43e63aef50 in qAbort () at /home/nico/workspace/qt6-dev/qtbase/src/corelib/global/qassert.cpp:46 #5 0x00007f43e640a3bf in qt_maybe_message_fatal<QString&> (msgType=msgType@entry=QtFatalMsg, context=..., message=...) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/global/qlogging.cpp:2059 #6 0x00007f43e640a530 in qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef __va_list_tag __va_list_tag *) (msgType=msgType@entry=QtFatalMsg, context=..., msg=msg@entry=0x7f43e6f18060 "ASSERT: \"%s\" in file %s, line %d", ap=ap@entry=0x7f43dd6cb020) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/global/qlogging.cpp:337 #7 0x00007f43e6418ba7 in QMessageLogger::fatal (this=this@entry=0x7f43dd4634a0, msg=msg@entry=0x7f43e6f18060 "ASSERT: \"%s\" in file %s, line %d") at /home/nico/workspace/qt6-dev/qtbase/src/corelib/global/qlogging.cpp:826 #8 0x00007f43e63af0b6 in qt_assert (assertion=0x7f43e7020400 "truncatedValue <= FP((std::numeric_limits<Result>::max)())", assertion@entry=0x7f43e7045460 "truncatedValue <= FP((std::numeric_limits<Result>::max)())", file=0x7f43e701fe80 "/home/nico/workspace/qt6-dev/qtbase/src/corelib/global/qnumeric.h", file@entry=0x7f43e7045380 "/home/nico/workspace/qt6-dev/qtbase/src/corelib/global/qnumeric.h", line=line@entry=508) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/global/qassert.cpp:106 #9 0x00007f43e693bf3a in QtPrivate::qCheckedFPConversionToInteger<int, double, true, true> (value=<optimized out>) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/global/qnumeric.h:508 #10 0x00007f43e69aac2e in qCeil<double> (v=<optimized out>) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qmath.h:30 #11 0x00007f43e69a9a22 in QRectF::toAlignedRect (this=0x7f43dd7d8a00) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/tools/qrect.cpp:2337 #12 0x00007f43f259d5d8 in KWin::SurfaceInterfacePrivate::mapToBuffer (this=0x51a00001b080, region=...) at /home/nico/kde-qtdev/src/kwin/src/wayland/surface.cpp:799 #13 0x00007f43f259c172 in KWin::SurfaceInterfacePrivate::applyState (this=0x51a00001b080, next=0x519000136580) at /home/nico/kde-qtdev/src/kwin/src/wayland/surface.cpp:719 #14 0x00007f43f2662e57 in KWin::Transaction::apply (this=0x5030004df860) at /home/nico/kde-qtdev/src/kwin/src/wayland/transaction.cpp:229 #15 0x00007f43f26632f0 in KWin::Transaction::tryApply (this=0x5030004df860) at /home/nico/kde-qtdev/src/kwin/src/wayland/transaction.cpp:262 #16 0x00007f43f26620a6 in KWin::Transaction::unlock (this=0x5030004df860) at /home/nico/kde-qtdev/src/kwin/src/wayland/transaction.cpp:113 #17 0x00007f43f2661345 in operator() (__closure=0x5030004df7e0) at /home/nico/kde-qtdev/src/kwin/src/wayland/transaction.cpp:51 #18 0x00007f43f26668d8 in operator() (__closure=0x7f43dd45c840) at /home/nico/kde-qtdev/usr/include/QtCore/qobjectdefs_impl.h:116 #19 0x00007f43f266734d in QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<std::integer_sequence<long unsigned int>, QtPrivate::List<>, void, KWin::TransactionDmaBufLocker::TransactionDmaBufLocker(const KWin::DmaBufAttributes*)::<lambda()> >::call(KWin::TransactionDmaBufLocker::TransactionDmaBufLocker(const KWin::DmaBufAttributes*)::<lambda()>&, void**)::<lambda()> >(void **, struct {...} &&) (args=0x7f43dd5b2b60, fn=...) at /home/nico/kde-qtdev/usr/include/QtCore/qobjectdefs_impl.h:65 #20 0x00007f43f26669de in QtPrivate::FunctorCall<std::integer_sequence<long unsigned int>, QtPrivate::List<>, void, KWin::TransactionDmaBufLocker::TransactionDmaBufLocker(const KWin::DmaBufAttributes*)::<lambda()> >::call(struct {...} &, void **) (f=..., arg=Python Exception <class 'gdb.MemoryError'>: Cannot access memory at address 0xffffffffffffffc0 #21 0x00007f43f2665ad7 in QtPrivate::FunctorCallable<KWin::TransactionDmaBufLocker::TransactionDmaBufLocker(const KWin::DmaBufAttributes*)::<lambda()> >::call<QtPrivate::List<>, void>(struct {...} &, void *, void **) (f=..., arg=0x7f43dd5b2b60) at /home/nico/kde-qtdev/usr/include/QtCore/qobjectdefs_impl.h:337 #22 0x00007f43f2664e1d in QtPrivate::QCallableObject<KWin::TransactionDmaBufLocker::TransactionDmaBufLocker(const KWin::DmaBufAttributes*)::<lambda()>, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0x5030004df7d0, r=0x508000c5f1a0, a=0x7f43dd5b2b60, ret=0x0) at /home/nico/kde-qtdev/usr/include/QtCore/qobjectdefs_impl.h:547 #23 0x00007f43e66c9614 in QtPrivate::QSlotObjectBase::call (this=<optimized out>, r=0x508000c5f1a0, a=0x7f43dd5b2b60) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qobjectdefs_impl.h:461 #24 doActivate<false> (sender=sender@entry=0x50200014b830, signal_index=<optimized out>, argv=<optimized out>, argv@entry=0x7f43dd5b2b60) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qobject.cpp:4231 #25 0x00007f43e66a798c in QMetaObject::activate (sender=sender@entry=0x50200014b830, m=m@entry=0x7f43e7210b40 <QSocketNotifier::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7f43dd5b2b60) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qobject.cpp:4291 #26 0x00007f43e66ff00e in QMetaObject::activate<void, QSocketDescriptor, QSocketNotifier::Type, QSocketNotifier::QPrivateSignal> (sender=0x50200014b830, mo=0x7f43e7210b40 <QSocketNotifier::staticMetaObject>, local_signal_index=0, ret=0x0) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qobjectdefs.h:319 #27 QSocketNotifier::activated (this=this@entry=0x50200014b830, _t1=..., _t2=QSocketNotifier::Read, _t3=...) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/Core_autogen/include/moc_qsocketnotifier.cpp:161 #28 0x00007f43e6700e84 in QSocketNotifier::event (this=0x50200014b830, e=<optimized out>) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qsocketnotifier.cpp:327 #29 0x00007f43ea481bc5 in QApplicationPrivate::notify_helper (this=this@entry=0x515000001200, receiver=receiver@entry=0x50200014b830, e=e@entry=0x7f43dd3f90a0) --Type <RET> for more, q to quit, c to continue without paging--c at /home/nico/workspace/qt6-dev/qtbase/src/widgets/kernel/qapplication.cpp:3309 #30 0x00007f43ea49d4d9 in QApplication::notify (this=0x7f43ddb07240, receiver=<optimized out>, e=<optimized out>) at /home/nico/workspace/qt6-dev/qtbase/src/widgets/kernel/qapplication.cpp:3259 #31 0x00007f43e65ae908 in QCoreApplication::notifyInternal2 (receiver=0x50200014b830, event=event@entry=0x7f43dd3f90a0) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qcoreapplication.cpp:1111 #32 0x00007f43e65aeaf9 in QCoreApplication::sendEvent (receiver=<optimized out>, event=event@entry=0x7f43dd3f90a0) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qcoreapplication.cpp:1551 #33 0x00007f43e6aab855 in QEventDispatcherUNIXPrivate::activateSocketNotifiers (this=this@entry=0x51200002ca40) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qeventdispatcher_unix.cpp:254 #34 0x00007f43e6aac708 in QEventDispatcherUNIX::processEvents (this=<optimized out>, flags=...) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qeventdispatcher_unix.cpp:470 #35 0x00007f43e8bd2f78 in QUnixEventDispatcherQPA::processEvents (this=<optimized out>, flags=...) at /home/nico/workspace/qt6-dev/qtbase/src/gui/platform/unix/qunixeventdispatcher.cpp:27 #36 0x00007f43e65ce208 in QEventLoop::processEvents (this=this@entry=0x7f43dd5fc840, flags=...) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qeventloop.cpp:104 #37 0x00007f43e65cf7c7 in QEventLoop::exec (this=this@entry=0x7f43dd5fc840, flags=...) at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qeventloop.cpp:186 #38 0x00007f43e65b7bcc in QCoreApplication::exec () at /home/nico/workspace/qt6-dev/qtbase/src/corelib/kernel/qcoreapplication.cpp:1454 #39 0x00007f43e7c47508 in QGuiApplication::exec () at /home/nico/workspace/qt6-dev/qtbase/src/gui/kernel/qguiapplication.cpp:1993 #40 0x00007f43ea47eae1 in QApplication::exec () at /home/nico/workspace/qt6-dev/qtbase/src/widgets/kernel/qapplication.cpp:2576 #41 0x0000000000567386 in main (argc=14, argv=0x7ffdcd0d06c8) at /home/nico/kde-qtdev/src/kwin/src/main_wayland.cpp:622 This is triggered by https://codereview.qt-project.org/c/qt/qtbase/+/622602, so only affects Qt dev, but it points to a bug in our code since we are invoking UB -- You are receiving this mail because: You are watching all bug changes.