Bug 466919 - DrKonqi crashed while submitting
Summary: DrKonqi crashed while submitting
Status: RESOLVED FIXED
Alias: None
Product: drkonqi
Classification: Applications
Component: general (show other bugs)
Version: master
Platform: Other Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords: qt6
Depends on:
Blocks:
 
Reported: 2023-03-06 00:52 UTC by Nicolas Fella
Modified: 2023-12-07 17:08 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Trace of all threads of drkonqi crash (75.21 KB, text/plain)
2023-12-05 06:14 UTC, Matt Fagnani
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nicolas Fella 2023-03-06 00:52:08 UTC
Halfway through the submission process, I think on the duplicates page, DrKonqi crashed

Application: Die KDE-Absturzbehandlung (drkonqi), signal: Segmentation fault
Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = 0x0}
[KCrash Handler]
#5  0x00007f4f288c3d8a in ?? ()
#6  0x00007f496afca3c0 in pcre2_match_data_create_16 () from /lib64/libpcre2-16.so.0
#7  0x00007f496bf3aa9c in QRegularExpressionPrivate::doMatch(QRegularExpressionMatchPrivate*, long long, QRegularExpressionPrivate::CheckSubjectStringOption, QRegularExpressionMatchPrivate const*) const () from /lib64/libQt6Core.so.6
#8  0x00007f496bf3b355 in QRegularExpression::match(QString const&, long long, QRegularExpression::MatchType, QFlags<QRegularExpression::MatchOption>) const () from /lib64/libQt6Core.so.6
#9  0x00000000004781be in BacktraceLineGdb::parse (this=0x7f48f3ffe7d0) at /home/nico/kde6/src/drkonqi/src/parser/backtraceparsergdb.cpp:64
#10 0x0000000000478e16 in BacktraceLineGdb::BacktraceLineGdb (this=0x7f48f3ffe7d0, lineStr=...) at /home/nico/kde6/src/drkonqi/src/parser/backtraceparsergdb.cpp:22
#11 0x0000000000478f1c in BacktraceParserGdb::parseLine (this=<optimized out>, lineStr=...) at /home/nico/kde6/src/drkonqi/src/parser/backtraceparsergdb.cpp:200
#12 0x0000000000479509 in BacktraceParserGdb::newLine (this=0x467d230, lineStr=...) at /home/nico/kde6/src/drkonqi/src/parser/backtraceparsergdb.cpp:191
#13 0x00007f496bdc7f8f in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt6Core.so.6
#14 0x0000000000426ae3 in ParseBugBacktraces::newLine (this=this@entry=0x7f48f3ffea50, _t1=...) at /home/nico/kde6/build/drkonqi/src/DrKonqiInternal_autogen/W72SJHHTCE/moc_parsebugbacktraces.cpp:166
#15 0x0000000000471773 in ParseBugBacktraces::parse (this=0x7f48f3ffea50, comment=...) at /home/nico/kde6/src/drkonqi/src/bugzillaintegration/parsebugbacktraces.cpp:126
#16 0x0000000000471966 in ParseBugBacktraces::parse (this=this@entry=0x7f48f3ffea50) at /home/nico/kde6/src/drkonqi/src/bugzillaintegration/parsebugbacktraces.cpp:113
#17 0x000000000046b24c in operator() (__closure=0x7f48f3ffea20) at /home/nico/kde6/src/drkonqi/src/bugzillaintegration/duplicatefinderjob.cpp:108
#18 std::__invoke_impl<ParseBugBacktraces::DuplicateRating, DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()>&> (__f=...) at /usr/include/c++/12/bits/invoke.h:61
#19 std::__invoke<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()>&> (__fn=...) at /usr/include/c++/12/bits/invoke.h:96
#20 std::invoke<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()>&> (__fn=...) at /usr/include/c++/12/functional:110
#21 operator() (function=..., __closure=<optimized out>) at /usr/include/qt6/QtConcurrent/qtconcurrentstoredfunctioncall.h:116
#22 std::__invoke_impl<ParseBugBacktraces::DuplicateRating, const QtConcurrent::StoredFunctionCall<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >::runFunctor()::<lambda(std::decay_t<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >)>&, DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> > (__f=<synthetic pointer>...) at /usr/include/c++/12/bits/invoke.h:61
#23 std::__invoke<const QtConcurrent::StoredFunctionCall<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >::runFunctor()::<lambda(std::decay_t<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >)>&, DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> > (__fn=<synthetic pointer>...) at /usr/include/c++/12/bits/invoke.h:96
#24 std::__apply_impl<const QtConcurrent::StoredFunctionCall<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >::runFunctor()::<lambda(std::decay_t<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >)>&, std::tuple<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >, 0> (__t=..., __f=<synthetic pointer>...) at /usr/include/c++/12/tuple:1852
#25 std::apply<const QtConcurrent::StoredFunctionCall<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >::runFunctor()::<lambda(std::decay_t<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >)>&, std::tuple<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> > > (__t=..., __f=<synthetic pointer>...) at /usr/include/c++/12/tuple:1863
#26 QtConcurrent::StoredFunctionCall<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >::runFunctor(void) (this=0x447da80) at /usr/include/qt6/QtConcurrent/qtconcurrentstoredfunctioncall.h:122
#27 0x000000000046be52 in QtConcurrent::RunFunctionTaskBase<ParseBugBacktraces::DuplicateRating>::run (this=0x447da80) at /usr/include/qt6/QtConcurrent/qtconcurrentrunbase.h:83
#28 0x00007f496bf0dd33 in QThreadPoolThread::run() () from /lib64/libQt6Core.so.6
#29 0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#30 0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#31 0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 22 (Thread 0x7f490897c6c0 (LWP 250962) "Thread (pooled)"):
#1  0x00007f496b6ad804 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f496bf114a9 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib64/libQt6Core.so.6
#3  0x00007f496bf0e081 in QThreadPoolThread::run() () from /lib64/libQt6Core.so.6
#4  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 21 (Thread 0x7f490917d6c0 (LWP 250961) "Thread (pooled)"):
#1  0x00007f496b6ad804 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f496bf114a9 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib64/libQt6Core.so.6
#3  0x00007f496bf0e081 in QThreadPoolThread::run() () from /lib64/libQt6Core.so.6
#4  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 20 (Thread 0x7f490aa7f6c0 (LWP 250960) "Thread (pooled)"):
#1  0x00007f496b6ad804 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f496bf114a9 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib64/libQt6Core.so.6
#3  0x00007f496bf0e081 in QThreadPoolThread::run() () from /lib64/libQt6Core.so.6
#4  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 19 (Thread 0x7f490bfff6c0 (LWP 250959) "Thread (pooled)"):
#1  0x00007f496b6ad804 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f496bf114a9 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib64/libQt6Core.so.6
#3  0x00007f496bf0e081 in QThreadPoolThread::run() () from /lib64/libQt6Core.so.6
#4  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 18 (Thread 0x7f490b7fe6c0 (LWP 250958) "Thread (pooled)"):
#1  0x00007f496b6ad804 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f496bf114a9 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib64/libQt6Core.so.6
#3  0x00007f496bf0e081 in QThreadPoolThread::run() () from /lib64/libQt6Core.so.6
#4  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 17 (Thread 0x7f490a27e6c0 (LWP 250739) "Thread (pooled)"):
#1  0x00007f496b6ad804 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f496bf114a9 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib64/libQt6Core.so.6
#3  0x00007f496bf0e081 in QThreadPoolThread::run() () from /lib64/libQt6Core.so.6
#4  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 16 (Thread 0x7f49199cd6c0 (LWP 250726) "Thread (pooled)"):
#1  0x00007f496b6ad804 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f496bf114a9 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib64/libQt6Core.so.6
#3  0x00007f496bf0e081 in QThreadPoolThread::run() () from /lib64/libQt6Core.so.6
#4  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 15 (Thread 0x7f491affd6c0 (LWP 250607) "drkonqi:gdrv0"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f494670c62d in cnd_wait (cond=<optimized out>, mtx=<optimized out>) at ../src/c11/impl/threads_posix.c:135
#3  0x00007f49466bcd8b in util_queue_thread_func (input=input@entry=0x7f49140f2440) at ../src/util/u_queue.c:290
#4  0x00007f494670c55b in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 14 (Thread 0x7f491b7fe6c0 (LWP 250606) "drkonqi:gdrv0"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f494670c62d in cnd_wait (cond=<optimized out>, mtx=<optimized out>) at ../src/c11/impl/threads_posix.c:135
#3  0x00007f49466bcd8b in util_queue_thread_func (input=input@entry=0x7f4914005950) at ../src/util/u_queue.c:290
#4  0x00007f494670c55b in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 13 (Thread 0x7f491bfff6c0 (LWP 250605) "QSGRenderThread"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f496bf1153b in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib64/libQt6Core.so.6
#3  0x00007f495a2b14ac in QSGRenderThread::processEventsAndWaitForMore() () from /lib64/libQt6Quick.so.6
#4  0x00007f495a2b173a in QSGRenderThread::run() () from /lib64/libQt6Quick.so.6
#5  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#6  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#7  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 12 (Thread 0x7f4938bfe6c0 (LWP 250599) "drkonqi:sh5"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f494670c62d in cnd_wait (cond=<optimized out>, mtx=<optimized out>) at ../src/c11/impl/threads_posix.c:135
#3  0x00007f49466bcd8b in util_queue_thread_func (input=input@entry=0x1d5aad0) at ../src/util/u_queue.c:290
#4  0x00007f494670c55b in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 11 (Thread 0x7f49393ff6c0 (LWP 250598) "drkonqi:sh4"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f494670c62d in cnd_wait (cond=<optimized out>, mtx=<optimized out>) at ../src/c11/impl/threads_posix.c:135
#3  0x00007f49466bcd8b in util_queue_thread_func (input=input@entry=0x2122ff0) at ../src/util/u_queue.c:290
#4  0x00007f494670c55b in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 10 (Thread 0x7f4944dfc6c0 (LWP 250597) "drkonqi:sh3"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f494670c62d in cnd_wait (cond=<optimized out>, mtx=<optimized out>) at ../src/c11/impl/threads_posix.c:135
#3  0x00007f49466bcd8b in util_queue_thread_func (input=input@entry=0x211cce0) at ../src/util/u_queue.c:290
#4  0x00007f494670c55b in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 9 (Thread 0x7f49455fd6c0 (LWP 250596) "drkonqi:sh2"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f494670c62d in cnd_wait (cond=<optimized out>, mtx=<optimized out>) at ../src/c11/impl/threads_posix.c:135
#3  0x00007f49466bcd8b in util_queue_thread_func (input=input@entry=0x211f840) at ../src/util/u_queue.c:290
#4  0x00007f494670c55b in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 8 (Thread 0x7f4945dfe6c0 (LWP 250595) "drkonqi:sh1"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f494670c62d in cnd_wait (cond=<optimized out>, mtx=<optimized out>) at ../src/c11/impl/threads_posix.c:135
#3  0x00007f49466bcd8b in util_queue_thread_func (input=input@entry=0x2124fa0) at ../src/util/u_queue.c:290
#4  0x00007f494670c55b in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 7 (Thread 0x7f49465ff6c0 (LWP 250594) "drkonqi:sh0"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f494670c62d in cnd_wait (cond=<optimized out>, mtx=<optimized out>) at ../src/c11/impl/threads_posix.c:135
#3  0x00007f49466bcd8b in util_queue_thread_func (input=input@entry=0x211ccc0) at ../src/util/u_queue.c:290
#4  0x00007f494670c55b in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 6 (Thread 0x7f495080d6c0 (LWP 250593) "drkonqi:disk$0"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f494670c62d in cnd_wait (cond=<optimized out>, mtx=<optimized out>) at ../src/c11/impl/threads_posix.c:135
#3  0x00007f49466bcd8b in util_queue_thread_func (input=input@entry=0x2124e10) at ../src/util/u_queue.c:290
#4  0x00007f494670c55b in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 5 (Thread 0x7f49525ff6c0 (LWP 250592) "QQmlThread"):
#1  0x00007f496b4ea2ca in g_main_context_check () from /lib64/libglib-2.0.so.0
#2  0x00007f496b53ff8a in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
#3  0x00007f496b4e6f00 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#4  0x00007f496c023241 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt6Core.so.6
#5  0x00007f496bd7465b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt6Core.so.6
#6  0x00007f496be8bf05 in QThread::exec() () from /lib64/libQt6Core.so.6
#7  0x00007f496e2d1327 in QQmlThreadPrivate::run() () from /lib64/libQt6Qml.so.6
#8  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#9  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#10 0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 4 (Thread 0x7f4953fff6c0 (LWP 250483) "QDBusConnection"):
#1  0x00007f496b516dd8 in g_thread_self () from /lib64/libglib-2.0.so.0
#2  0x00007f496b4e6ef1 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00007f496c023241 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt6Core.so.6
#4  0x00007f496bd7465b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt6Core.so.6
#5  0x00007f496be8bf05 in QThread::exec() () from /lib64/libQt6Core.so.6
#6  0x00007f496c569ade in QDBusConnectionManager::run() () from /lib64/libQt6DBus.so.6
#7  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#8  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#9  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 3 (Thread 0x7f4958ffe6c0 (LWP 250482) "WaylandEventThr"):
#1  0x00007f4968261db5 in QtWaylandClient::EventThread::run() () from /lib64/libQt6WaylandClient.so.6
#2  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#3  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#4  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 2 (Thread 0x7f49597ff6c0 (LWP 250481) "WaylandEventThr"):
#1  0x00007f496b6ad510 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x00007f496bf1153b in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /lib64/libQt6Core.so.6
#3  0x00007f4968261d4b in QtWaylandClient::EventThread::run() () from /lib64/libQt6WaylandClient.so.6
#4  0x00007f496bf08ce8 in QThreadPrivate::start(void*) () from /lib64/libQt6Core.so.6
#5  0x00007f496b6ae12d in start_thread () from /lib64/libc.so.6
#6  0x00007f496b72fbc0 in clone3 () from /lib64/libc.so.6

Thread 1 (Thread 0x7f496a112f00 (LWP 250463) "drkonqi"):
#1  0x00007f496b4ea2ca in g_main_context_check () from /lib64/libglib-2.0.so.0
#2  0x00007f496b53ff8a in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
#3  0x00007f496b4e6f00 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#4  0x00007f496c023220 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt6Core.so.6
#5  0x00007f496bd7465b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt6Core.so.6
#6  0x00007f496bd70528 in QCoreApplication::exec() () from /lib64/libQt6Core.so.6
#7  0x0000000000425069 in main (argc=<optimized out>, argv=<optimized out>) at /home/nico/kde6/src/drkonqi/src/main.cpp:229
[Inferior 1 (process 250463) detached]
Comment 1 Matt Fagnani 2023-12-05 06:13:16 UTC
I booted the Fedora Rawhide/40 KDE Plasma live image Fedora-KDE-Live-x86_64-Rawhide-20231204.n.0.iso on bare metal. I started Konsole in Plasma 5.90.0 on Wayland. I ran WAYLAND_DEBUG=1 plasmashell --replace. To troubleshoot the plasmashell crashes at https://bugs.kde.org/show_bug.cgi?id=478086 I started Dolphin I quickly moved the cursor over the Konsole icon in the task manager to the icons to its left (Firefox, Dolphin, Discover, System Settings). plasmashell crashed when I did that and the panel disappeared and reappeared automatically a few seconds later. drkonqi appeared. I selected Developer information, and created a trace. I tried to report through bugs.kde.org through drkonqi, but drkonqi crashed at the point that a list of possible duplicate reports was shown and I clicked on one of the reports.

The crashing thread 7 had a segmentation fault with a trace like that in this report.

Thread 7 (Thread 0x7f95e51d86c0 (LWP 5730)):
#0  0x00007f969b11b41d in __GI___poll (fds=fds@entry=0x7f95e51d6568, nfds=nfds@entry=1, timeout=timeout@entry=1000) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f969dea1b98 in poll (__timeout=1000, __nfds=1, __fds=0x7f95e51d6568) at /usr/include/bits/poll2.h:39
#2  pollDrKonqiSocket (sockfd=3, pid=<optimized out>) at /usr/src/debug/kf6-kcrash-5.246.0-1.fc40.x86_64/src/kcrash.cpp:844
#3  KCrash::startProcess (argv=argv@entry=0x7f95e51d66a8, waitAndExit=waitAndExit@entry=true, argc=<optimized out>) at /usr/src/debug/kf6-kcrash-5.246.0-1.fc40.x86_64/src/kcrash.cpp:706
#4  0x00007f969dea2659 in KCrash::defaultCrashHandler (sig=11) at /usr/src/debug/kf6-kcrash-5.246.0-1.fc40.x86_64/src/kcrash.cpp:602
#5  <signal handler called>
#6  pcre2_match_data_create_from_pattern_16 (code=0x0, gcontext=0x0) at src/pcre2_match_data.c:87
#7  0x00007f969b9836aa in QRegularExpressionPrivate::doMatch (this=0x7f95e80011e0, priv=priv@entry=0x7f9620002a50, offset=<optimized out>, checkSubjectStringOption=checkSubjectStringOption@entry=QRegularExpressionPrivate::CheckSubjectString, previous=previous@entry=0x0) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/text/qregularexpression.cpp:1146
#8  0x00007f969b983e0e in QRegularExpression::match (this=this@entry=0x55fdaea8e1d0 <BacktraceLineGdb::parse()::regExp>, subject=..., offset=offset@entry=0, matchType=matchType@entry=QRegularExpression::NormalMatch, matchOptions=..., matchOptions@entry=...) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/text/qregularexpression.cpp:1597
#9  0x000055fdaea29b4b in BacktraceLineGdb::parse (this=this@entry=0x7f95e51d7410) at /usr/src/debug/plasma-drkonqi-5.90.0-1.fc40.x86_64/src/parser/backtraceparsergdb.cpp:119
#10 0x000055fdaea2af00 in BacktraceLineGdb::BacktraceLineGdb (this=<optimized out>, lineStr=..., this=<optimized out>, lineStr=...) at /usr/src/debug/plasma-drkonqi-5.90.0-1.fc40.x86_64/src/parser/backtraceparsergdb.cpp:22
#11 0x000055fdaea2b180 in BacktraceParserGdb::parseLine (lineStr=..., this=<optimized out>) at /usr/src/debug/plasma-drkonqi-5.90.0-1.fc40.x86_64/src/parser/backtraceparsergdb.cpp:200
#12 BacktraceParserGdb::newLine (this=<optimized out>, lineStr=...) at /usr/src/debug/plasma-drkonqi-5.90.0-1.fc40.x86_64/src/parser/backtraceparsergdb.cpp:191
#13 0x00007f969b8027a8 in doActivate<false> (sender=0x7f95e51d7660, signal_index=4, argv=0x7f95e51d76b0) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qobject.cpp:4033
#14 0x00007f969b7f8807 in QMetaObject::activate (sender=sender@entry=0x7f95e51d7660, m=m@entry=0x55fdaea86900 <ParseBugBacktraces::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7f95e51d76b0) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qobject.cpp:4081
#15 0x000055fdaea19d9e in ParseBugBacktraces::newLine (_t1=..., this=0x7f95e51d7660) at /usr/src/debug/plasma-drkonqi-5.90.0-1.fc40.x86_64/redhat-linux-build/src/DrKonqiInternal_autogen/include/moc_parsebugbacktraces.cpp:188
#16 ParseBugBacktraces::parse (comment=..., this=0x7f95e51d7660) at /usr/src/debug/plasma-drkonqi-5.90.0-1.fc40.x86_64/src/bugzillaintegration/parsebugbacktraces.cpp:126
#17 ParseBugBacktraces::parse (this=0x7f95e51d7660) at /usr/src/debug/plasma-drkonqi-5.90.0-1.fc40.x86_64/src/bugzillaintegration/parsebugbacktraces.cpp:113
#18 operator() (__closure=0x7f95e51d7630) at /usr/src/debug/plasma-drkonqi-5.90.0-1.fc40.x86_64/src/bugzillaintegration/duplicatefinderjob.cpp:108
#19 std::__invoke_impl<ParseBugBacktraces::DuplicateRating, DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()>&> (__f=...) at /usr/include/c++/13/bits/invoke.h:61
#20 std::__invoke<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()>&> (__fn=...) at /usr/include/c++/13/bits/invoke.h:96
#21 std::invoke<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()>&> (__fn=...) at /usr/include/c++/13/functional:113
#22 operator() (function=..., __closure=<synthetic pointer>) at /usr/include/qt6/QtConcurrent/qtconcurrentstoredfunctioncall.h:116
#23 std::__invoke_impl<ParseBugBacktraces::DuplicateRating, const QtConcurrent::StoredFunctionCall<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >::runFunctor()::<lambda(std::decay_t<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >)>&, DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> > (__f=<synthetic pointer>...) at /usr/include/c++/13/bits/invoke.h:61
#24 std::__invoke<const QtConcurrent::StoredFunctionCall<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >::runFunctor()::<lambda(std::decay_t<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >)>&, DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> > (__fn=<synthetic pointer>...) at /usr/include/c++/13/bits/invoke.h:96
#25 std::__apply_impl<const QtConcurrent::StoredFunctionCall<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >::runFunctor()::<lambda(std::decay_t<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >)>&, std::tuple<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >, 0> (__t=..., __f=<synthetic pointer>...) at /usr/include/c++/13/tuple:2288
#26 std::apply<const QtConcurrent::StoredFunctionCall<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >::runFunctor()::<lambda(std::decay_t<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >)>&, std::tuple<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> > > (__t=..., __f=<synthetic pointer>...) at /usr/include/c++/13/tuple:2299
#27 QtConcurrent::StoredFunctionCall<DuplicateFinderJob::slotCommentsFetched(const QList<QPointer<Bugzilla::Comment> >&, QObject*)::<lambda()> >::runFunctor(void) (this=0x55fdb12f2c20) at /usr/include/qt6/QtConcurrent/qtconcurrentstoredfunctioncall.h:122
#28 0x000055fdaea1bcfc in QtConcurrent::RunFunctionTaskBase<ParseBugBacktraces::DuplicateRating>::run (this=0x55fdb12f2c20) at /usr/include/qt6/QtConcurrent/qtconcurrentrunbase.h:83
#29 0x00007f969b955e67 in QThreadPoolThread::run (this=0x55fdb327cc60) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/thread/qthreadpool.cpp:66
#30 0x00007f969b950ace in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/thread/qthread_unix.cpp:324
#31 (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > (t=...) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/thread/qthread_unix.cpp:260
#32 QThreadPrivate::start (arg=0x55fdb327cc60) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/thread/qthread_unix.cpp:283
#33 0x00007f969b0a8c91 in start_thread (arg=<optimized out>) at pthread_create.c:447
#34 0x00007f969b128f9c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

The crashing function pcre2_match_data_create_from_pattern_16 in pcre2 might've been a null pointer dereference since code=0x0 and the crashing line had pcre2_match_data_create(((pcre2_real_code *)code)->top_bracket

(gdb) thread 7
[Switching to thread 7 (Thread 0x7f95e51d86c0 (LWP 5730))]
#0  0x00007f969b11b41d in __GI___poll (fds=fds@entry=0x7f95e51d6568, nfds=nfds@entry=1, timeout=timeout@entry=1000) at ../sysdeps/unix/sysv/linux/poll.c:29
Downloading source file /usr/src/debug/glibc-2.38.9000-26.fc40.x86_64/io/../sysdeps/unix/sysv/linux/poll.c
29        return SYSCALL_CANCEL (poll, fds, nfds, timeout);    
(gdb) frame 6
#6  pcre2_match_data_create_from_pattern_16 (code=0x0, gcontext=0x0) at src/pcre2_match_data.c:87
Downloading source file /usr/src/debug/pcre2-10.42-2.fc40.x86_64/src/pcre2_match_data.c
87      return pcre2_match_data_create(((pcre2_real_code *)code)->top_bracket + 1,   

I saw this type of drkonqi crash 2 times when the list of possible duplicate reports was shown, but the first didn't store a core dump due to space limitations. I'll attach the trace of all threads.
Comment 2 Matt Fagnani 2023-12-05 06:14:37 UTC
Created attachment 163891 [details]
Trace of all threads of drkonqi crash
Comment 3 Bug Janitor Service 2023-12-05 16:14:26 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/drkonqi/-/merge_requests/204
Comment 4 Harald Sitter 2023-12-07 17:08:25 UTC
Git commit a0bd2fa0cfbde80032cf45e657ad21da4df74a41 by Harald Sitter.
Committed on 07/12/2023 at 18:02.
Pushed by sitter into branch 'master'.

duplicates detection: drop support

with the advance of automatic crash reporting the duplicates detection
isn't really necessary anymore.

it also hasn't been all that great. the UI was terrible, the UX was
terrible, the code was expansive, parsing random comments from bugzilla
had potential of crashing drkonqi ...
Related: bug 463223, bug 473408, bug 278636, bug 264146

M  +0    -1    Testing.md
M  +0    -6    src/CMakeLists.txt
M  +4    -101  src/bugzillaintegration/bugzillalib.cpp
M  +2    -20   src/bugzillaintegration/bugzillalib.h
D  +0    -163  src/bugzillaintegration/duplicatefinderjob.cpp
D  +0    -83   src/bugzillaintegration/duplicatefinderjob.h
D  +0    -158  src/bugzillaintegration/parsebugbacktraces.cpp
D  +0    -52   src/bugzillaintegration/parsebugbacktraces.h
M  +35   -99   src/bugzillaintegration/reportinterface.cpp
M  +0    -17   src/bugzillaintegration/reportinterface.h
M  +1    -16   src/drkonqi_globals.h
M  +1    -4    src/drkonqidialog.cpp
M  +0    -35   src/parser/backtraceparser.cpp
M  +1    -6    src/parser/backtraceparser.h
M  +0    -1    src/parser/backtraceparser_p.h
M  +0    -1    src/qml/BacktracePage.qml
D  +0    -57   src/qml/DuplicatesLoadingPage.qml
D  +0    -135  src/qml/DuplicatesPage.qml
M  +1    -1    src/qml/LoginPage.qml
D  +0    -73   src/qml/PerfectDuplicatePage.qml
M  +0    -5    src/qml/ReportPage.qml
M  +0    -6    src/qml/main.qml
M  +0    -3    src/qml/qml.qrc
D  +0    -120  src/qmlextensions/duplicatemodel.cpp
D  +0    -57   src/qmlextensions/duplicatemodel.h
M  +1    -0    src/qmlextensions/platformmodel.cpp
M  +0    -21   src/tests/backtraceparsertest/backtraceparsertest.cpp
M  +0    -2    src/tests/backtraceparsertest/backtraceparsertest.h
M  +0    -10   src/tests/backtraceparsertest/backtraceparsertest_data/data.ini
M  +0    -1    src/tests/backtraceparsertest/backtraceparsertest_manual.cpp

https://invent.kde.org/plasma/drkonqi/-/commit/a0bd2fa0cfbde80032cf45e657ad21da4df74a41