https://bugs.kde.org/show_bug.cgi?id=449773
Bug ID: 449773 Summary: Conditional jump or move depends on uninitialised value in KWin::DrmPipeline::checkTestBuffer Product: kwin Version: 5.24.0 Platform: openSUSE RPMs OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: platform-drm Assignee: kwin-bugs-n...@kde.org Reporter: jirisl...@gmail.com CC: kwin-bugs-n...@kde.org, n...@kde.org, xaver.h...@gmail.com Depends on: 445894 Blocks: 446101 Target Milestone: --- +++ This bug was initially created as a clone of Bug #445894 +++ > Conditional jump or move depends on uninitialised value(s) > at 0xCD2EBCF: > KWin::DrmPipeline::checkTestBuffer()::{lambda(QSharedPointer<KWin::DrmBuffer> > const&)#1}::operator()(QSharedPointer<KWin::DrmBuffer> const&) const > (drm_pipeline.cpp:306) > by 0xCD2EDA3: KWin::DrmPipeline::checkTestBuffer() (drm_pipeline.cpp:318) > by 0xCD2F41E: > KWin::DrmPipeline::commitPipelinesAtomic(QVector<KWin::DrmPipeline*> const&, > KWin::DrmPipeline::CommitMode, QVector<KWin::DrmObject*> const&) > (drm_pipeline.cpp:131) > by 0xCD26BA8: KWin::DrmGpu::testPipelines() (drm_gpu.cpp:427) > by 0xCD29E27: > KWin::DrmGpu::checkCrtcAssignment(QVector<KWin::DrmConnector*>, > QVector<KWin::DrmCrtc*>) (drm_gpu.cpp:365) > by 0xCD29E27: > KWin::DrmGpu::checkCrtcAssignment(QVector<KWin::DrmConnector*>, > QVector<KWin::DrmCrtc*>) (drm_gpu.cpp:365) > by 0xCD3B298: UnknownInlinedFun (drm_gpu.cpp:398) > by 0xCD3B298: UnknownInlinedFun (drm_gpu.cpp:396) > by 0xCD3B298: > KWin::DrmGpu::testPendingConfiguration(KWin::DrmGpu::TestMode) [clone > .constprop.0] (drm_gpu.cpp:403) > by 0xCD14B43: KWin::DrmBackend::updateOutputs() (drm_gpu.cpp:309) > by 0xCD16F0C: KWin::DrmBackend::handleUdevEvent() (drm_backend.cpp:237) > by 0x6FC54F2: UnknownInlinedFun (qobjectdefs_impl.h:398) > by 0x6FC54F2: void doActivate<false>(QObject*, int, void**) > (qobject.cpp:3886) > by 0x6FC88CE: QSocketNotifier::activated(QSocketDescriptor, > QSocketNotifier::Type, QSocketNotifier::QPrivateSignal) > (moc_qsocketnotifier.cpp:178) > by 0x6FC90CA: QSocketNotifier::event(QEvent*) (qsocketnotifier.cpp:302) > Uninitialised value was created by a stack allocation > at 0xCD329F0: QtPrivate::QSlotObject<bool > (KWin::EglGbmBackend::*)(KWin::DrmAbstractOutput*), > QtPrivate::List<KWin::DrmAbstractOutput*>, void>::impl(int, > QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (qobjectdefs_impl.h:411) (In reply to Vlad Zahorodnii from bug 445894 comment #23) > > So it's the pointer returned by backend->drmFormat(m_output); > > drmFormat() returns an integer. can you add a default member initializer for > GbmFormat::drmFormat, i.e. > > struct GbmFormat > { > uint32_t drmFormat = 0; Sure, this makes it go away. SOFTWARE/OS VERSIONS Operating System: openSUSE Tumbleweed 20211117 KDE Plasma Version: 5.23.2 KDE Frameworks Version: 5.87.0 Qt Version: 5.15.2 Kernel Version: 5.15.2-1.g26a203b-default (64-bit) Graphics Platform: Wayland Processors: 4 × Intel® Core™ i7-6600U CPU @ 2.60GHz Memory: 15.3 GiB of RAM Graphics Processor: Mesa Intel® HD Graphics 520 Referenced Bugs: https://bugs.kde.org/show_bug.cgi?id=445894 [Bug 445894] Crash in KWin::DrmOutput::updateCursor -> malloc(): unsorted double linked list corrupted https://bugs.kde.org/show_bug.cgi?id=446101 [Bug 446101] Crash in KWin::DrmPipeline::setCursor -- You are receiving this mail because: You are watching all bug changes.