Summary: | Konsole crashes during Firefox PGO+LTO compilation | ||
---|---|---|---|
Product: | [Applications] konsole | Reporter: | David Kredba <kredba> |
Component: | general | Assignee: | Konsole Developer <konsole-devel> |
Status: | RESOLVED NOT A BUG | ||
Severity: | normal | CC: | a.samirh78 |
Priority: | NOR | ||
Version: | 21.08.1 | ||
Target Milestone: | --- | ||
Platform: | Gentoo Packages | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | attachment-19038-0.html |
Description
David Kredba
2021-10-06 13:21:10 UTC
Created attachment 142208 [details] attachment-19038-0.html it breaks inside of Qt, on realloc. it would be extremely userful to see your memory stats because that looks like a memory exhaustion. On Wed, Oct 6, 2021 at 2:21 PM David Kredba <bugzilla_noreply@kde.org> wrote: > https://bugs.kde.org/show_bug.cgi?id=443397 > > Bug ID: 443397 > Summary: Konsole crashes during Firefox PGO+LTO compilation > Product: konsole > Version: 21.08.1 > Platform: Gentoo Packages > OS: Linux > Status: REPORTED > Severity: normal > Priority: NOR > Component: general > Assignee: konsole-devel@kde.org > Reporter: nheghathivhistha@gmail.com > Target Milestone: --- > > SUMMARY > The Konsole version 21.08.1 crashes during Firefox PGO+LTO compilation. > It disappears with signal Aborted. > > STEPS TO REPRODUCE > 1. Compile Gentoo's current Firefox package with lto and pgo use flags > enabled > 2. > 3. > > OBSERVED RESULT > Konsole crashes with Aborted signal. > > EXPECTED RESULT > Konsole not crashes. > > SOFTWARE/OS VERSIONS > Linux/KDE Plasma: > > KDE Plasma Version: 5.22.5 > KDE Frameworks Version: 5.86.0 > Qt Version: 5.15.2 > > ADDITIONAL INFORMATION > After crash the Firefox merge can be started again using ebuild merge > command > and finishes without its crash. Tested with older Firefox builds too. > > Application: Konsole (konsole), signal: Aborted > > [KCrash Handler] > #4 0x00007f815ec8429e in raise () from /lib64/libc.so.6 > #5 0x00007f815ec6e2b6 in abort () from /lib64/libc.so.6 > #6 0x00007f815ee7192e in ?? () from > /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/libstdc++.so.6 > #7 0x00007f815ee7df2a in ?? () from > /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/libstdc++.so.6 > #8 0x00007f815ee7df95 in std::terminate() () from > /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/libstdc++.so.6 > #9 0x00007f815ee7e248 in __cxa_throw () from > /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/libstdc++.so.6 > #10 0x00007f815f07cf9e in qBadAlloc () at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/global/qglobal.cpp:3338 > #11 0x00007f815f07f9aa in QListData::realloc_grow (this=<optimized out>, > growth=<optimized out>) at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/tools/qlist.cpp:171 > #12 0x00007f815f0f42da in QListData::append (this=this@entry > =0x55a68aeaf008, > n=n@entry=1) at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/tools/qlist.cpp:196 > #13 0x00007f815f0f430a in QListData::append (this=this@entry=0x55a68aeaf008) > at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/tools/qlist.cpp:206 > #14 0x00007f816049798c in QList<Konsole::Character>::append (t=..., > this=0x55a68aeaf008) at /usr/include/qt5/QtCore/qlist.h:632 > #15 QList<Konsole::Character>::append (t=..., this=0x55a68aeaf008) at > /usr/include/qt5/QtCore/qlist.h:620 > #16 QList<Konsole::Character>::push_back (t=..., this=0x55a68aeaf008) at > /usr/include/qt5/QtCore/qlist.h:377 > #17 std::back_insert_iterator<QList<Konsole::Character> >::operator= > (__value=..., this=<synthetic pointer>) at > > /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include/g++-v11/bits/stl_iterator.h:674 > #18 std::__copy_move<false, false, > std::random_access_iterator_tag>::__copy_m<Konsole::Character const*, > std::back_insert_iterator<QList<Konsole::Character> > > (__result=..., > __last=<optimized out>, __first=0x55a720cc2408) at > > /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include/g++-v11/bits/stl_algobase.h:385 > #19 std::__copy_move_a2<false, Konsole::Character const*, > std::back_insert_iterator<QList<Konsole::Character> > > (__result=..., > __last=<optimized out>, __first=<optimized out>) at > > /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include/g++-v11/bits/stl_algobase.h:495 > #20 std::__copy_move_a1<false, Konsole::Character const*, > std::back_insert_iterator<QList<Konsole::Character> > > (__result=..., > __last=<optimized out>, __first=<optimized out>) at > > /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include/g++-v11/bits/stl_algobase.h:522 > #21 std::__copy_move_a<false, Konsole::Character const*, > std::back_insert_iterator<QList<Konsole::Character> > > (__result=..., > __last=<optimized out>, __first=<optimized out>) at > > /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include/g++-v11/bits/stl_algobase.h:529 > #22 std::copy<Konsole::Character const*, > std::back_insert_iterator<QList<Konsole::Character> > > (__result=..., > __last=<optimized out>, __first=<optimized out>) at > > /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include/g++-v11/bits/stl_algobase.h:620 > #23 Konsole::CompactHistoryScroll::addCells (this=0x55a68aeaeff0, > a=<optimized > out>, count=<optimized out>) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/history/compact/CompactHistoryScroll.cpp:48 > #24 0x00007f816046d880 in Konsole::HistoryScroll::addCellsVector > (cells=..., > this=<optimized out>) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/history/HistoryScroll.h:50 > #25 Konsole::Screen::addHistLine (this=this@entry=0x55a68aeac680) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/Screen.cpp:1640 > #26 0x00007f816046f4ba in Konsole::Screen::scrollUp (this=0x55a68aeac680, > n=n@entry=1) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/Screen.cpp:1002 > #27 0x00007f816046f4fa in Konsole::Screen::index > (this=this@entry=0x55a68aeac680) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/Screen.cpp:196 > #28 0x00007f816046f512 in Konsole::Screen::nextLine > (this=this@entry=0x55a68aeac680) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/Screen.cpp:216 > #29 0x00007f816047131f in Konsole::Screen::displayCharacter > (this=0x55a68aeac680, c=109) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/Screen.cpp:926 > #30 0x00007f8160488ae0 in Konsole::Vt102Emulation::receiveChar > (this=0x55a68b485f00, cc=<optimized out>) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/Vt102Emulation.cpp:478 > #31 0x00007f816045d1f3 in Konsole::Emulation::receiveData > (this=0x55a68b485f00, > text=0x55a74060e0e8 > "fox_build/dist/include/mozilla/MozPromise.h:485:18:\033[m\033[K > \033[01;35m\033[Kwarning: \033[m\033[Ksource locations for function > > '\033[01m\033[Kmozilla::MozPromise<mozilla::ipc::Endpoint<mozilla::extensions::PStreamFilter"..., > length=4095) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/Emulation.cpp:241 > #32 0x00007f815f2a11b6 in QtPrivate::QSlotObjectBase::call > (a=0x7fffd1b773e0, > r=0x55a68aeae360, this=0x55a68b197690) at > > ../../include/QtCore/../../../qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qobjectdefs_impl.h:398 > #33 doActivate<false> (sender=0x55a68ae95130, signal_index=17, > argv=0x7fffd1b773e0) at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qobject.cpp:3886 > #34 0x00007f815f29af17 in QMetaObject::activate > (sender=sender@entry=0x55a68ae95130, m=m@entry=0x7f81605474e0 > <Konsole::Pty::staticMetaObject>, > local_signal_index=local_signal_index@entry=0, argv=argv@entry > =0x7fffd1b773e0) > at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qobject.cpp:3946 > #35 0x00007f816044e9bd in Konsole::Pty::receivedData > (this=this@entry=0x55a68ae95130, _t1=<optimized out>, _t2=<optimized > out>) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1_build/src/konsoleprivate_autogen/EWIEGA46WW/moc_Pty.cpp:154 > #36 0x00007f8160467102 in Konsole::Pty::dataReceived (this=0x55a68ae95130) > at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/Pty.cpp:78 > #37 0x00007f815f2a11b6 in QtPrivate::QSlotObjectBase::call > (a=0x7fffd1b774c0, > r=0x55a68ae95130, this=0x55a68afcdf30) at > > ../../include/QtCore/../../../qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qobjectdefs_impl.h:398 > #38 doActivate<false> (sender=0x55a68aff1120, signal_index=3, > argv=0x7fffd1b774c0) at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qobject.cpp:3886 > #39 0x00007f815f29af17 in QMetaObject::activate > (sender=sender@entry=0x55a68aff1120, m=m@entry=0x7f815f53c980 > <QIODevice::staticMetaObject>, local_signal_index=local_signal_index@entry > =0, > argv=argv@entry=0x0) at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qobject.cpp:3946 > #40 0x00007f815f1bbc60 in QIODevice::readyRead (this=this@entry > =0x55a68aff1120) > at .moc/moc_qiodevice.cpp:190 > #41 0x00007f815e75dfb4 in KPtyDevicePrivate::_k_canRead > (this=0x55a68ae435a0) > at > > /var/tmp/portage/kde-frameworks/kpty-5.86.0/work/kpty-5.86.0/src/kptydevice.cpp:291 > #42 0x00007f815e75e409 in KPtyDevice::qt_static_metacall > (_c=QMetaObject::InvokeMetaMethod, _a=0x7fffd1b77660, _id=<optimized out>, > _o=<optimized out>) at > > /var/tmp/portage/kde-frameworks/kpty-5.86.0/work/kpty-5.86.0_build/src/KF5Pty_autogen/include/moc_kptydevice.cpp:84 > #43 KPtyDevice::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, > _id=<optimized out>, _a=0x7fffd1b77660) at > > /var/tmp/portage/kde-frameworks/kpty-5.86.0/work/kpty-5.86.0_build/src/KF5Pty_autogen/include/moc_kptydevice.cpp:77 > #44 0x00007f815f2a0f4e in doActivate<false> (sender=0x55a68ae7e740, > signal_index=5, argv=0x7fffd1b77660) at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qobject.cpp:3898 > #45 0x00007f815f29af17 in QMetaObject::activate > (sender=sender@entry=0x55a68ae7e740, m=m@entry=0x7f815f5401c0 > <QSocketNotifier::staticMetaObject>, > local_signal_index=local_signal_index@entry=2, argv=argv@entry > =0x7fffd1b77660) > at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qobject.cpp:3946 > #46 0x00007f815f2a48bb in QSocketNotifier::activated > (this=this@entry=0x55a68ae7e740, _t1=<optimized out>, _t2=...) at > .moc/moc_qsocketnotifier.cpp:185 > #47 0x00007f815f2a5075 in QSocketNotifier::event (this=0x55a68ae7e740, > e=0x7fffd1b77750) at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qsocketnotifier.h:115 > #48 0x00007f815fd0296f in QApplicationPrivate::notify_helper > (this=<optimized > out>, receiver=0x55a68ae7e740, e=0x7fffd1b77750) at > > /var/tmp/portage/dev-qt/qtwidgets-5.15.2-r11/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/widgets/kernel/qapplication.cpp:3632 > #49 0x00007f815f26d828 in QCoreApplication::notifyInternal2 > (receiver=0x55a68ae7e740, event=0x7fffd1b77750) at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qcoreapplication.cpp:1064 > #50 0x00007f815f2c039e in socketNotifierSourceDispatch > (source=0x55a68aada950) > at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qeventdispatcher_glib.cpp:107 > #51 0x00007f815d5b213b in g_main_context_dispatch () from > /usr/lib64/libglib-2.0.so.0 > #52 0x00007f815d5b23f8 in ?? () from /usr/lib64/libglib-2.0.so.0 > #53 0x00007f815d5b24af in g_main_context_iteration () from > /usr/lib64/libglib-2.0.so.0 > #54 0x00007f815f2bf934 in QEventDispatcherGlib::processEvents > (this=0x55a68aad1df0, flags=...) at > > /var/tmp/portage/dev-qt/qtcore-5.15.2-r10/work/qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/kernel/qeventdispatcher_glib.cpp:423 > #55 0x00007f815f26c21b in QEventLoop::exec (this=this@entry > =0x7fffd1b77960, > flags=..., flags@entry=...) at > > ../../include/QtCore/../../../qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/global/qflags.h:69 > #56 0x00007f815f27484d in QCoreApplication::exec () at > > ../../include/QtCore/../../../qtbase-a4f9e56975fa6ab4a1f63a9b34a4d77b1cfe4acd/src/corelib/global/qflags.h:121 > #57 0x000055a689c4bb54 in main (argc=<optimized out>, argv=<optimized > out>) at > > /var/tmp/portage/kde-apps/konsole-21.08.1-r1/work/konsole-21.08.1/src/main.cpp:220 > [Inferior 1 (process 6725) detached] > > > The last command written in the build.log file is: > /usr/bin/x86_64-pc-linux-gnu-g++ -o Unified_cpp_netwerk_base4.o -c -flto > -flifetime-dse=1 > > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox_build/dist/stl_wrappers > > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox_build/dist/system_wrappers > -include > > /var/tmp/portage/www-client/firefox-93.0/work/firefox-93.0/config/gcc_hidden.h > -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -DNDEBUG=1 > -DTRIMMED=1 -DOS_POSIX=1 -DOS_LINUX=1 -DMOZ_HAS_MOZGLUE > -DMOZILLA_INTERNAL_API > -DIMPL_LIBXUL -DSTATIC_EXPORTABLE_JS_API > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox-93.0/netwerk/base > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox_build/netwerk/base > > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox_build/ipc/ipdl/_ipdlheaders > > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox-93.0/ipc/chromium/src > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox-93.0/docshell/base > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox-93.0/dom/base > > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox-93.0/netwerk/protocol/http > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox-93.0/netwerk/socket > > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox-93.0/netwerk/url-classifier > > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox-93.0/security/manager/ssl > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox_build/dist/include > -I/usr/include/nspr -I/usr/include/nss -I/usr/include/nspr > > -I/var/tmp/portage/www-client/firefox-93.0/work/firefox_build/dist/include/nss > -I/usr/include/pixman-1 -DMOZILLA_CLIENT -include > > /var/tmp/portage/www-client/firefox-93.0/work/firefox_build/mozilla-config.h > -Wall -Wempty-body -Wignored-qualifiers -Wpointer-arith -Wsign-compare > -Wtype-limits -Wunreachable-code -Wno-invalid-offsetof -Wc++2a-compat > -Wduplicated-cond -Wimplicit-fallthrough -Wno-error=maybe-uninitialized > -Wno-error=deprecated-declarations -Wno-error=array-bounds > -Wno-error=coverage-mismatch -Wno-error=free-nonheap-object > -Wno-multistatement-macros -Wno-error=class-memaccess > -Wno-error=deprecated-copy -Wno-error=unused-but-set-variable -Wformat > -Wformat-security -Wformat-overflow=2 -Wno-psabi -fno-sized-deallocation > -fno-aligned-new -pipe -march=znver2 -fno-tree-loop-vectorize > -fno-exceptions > -fno-strict-aliasing -fPIC -fno-rtti -ffunction-sections -fdata-sections > -fno-exceptions -fno-math-errno -pthread -pipe -O3 -fomit-frame-pointer > -funwind-tables -Wno-error=shadow -fprofile-use -fprofile-correction > -Wcoverage-mismatch -MD -MP -MF .deps/Unified_cpp_netwerk_base4.o.pp > -fdiagnostics-color Unified_cpp_netwerk_base4.cpp > > -- > You are receiving this mail because: > You are the assignee for the bug. Thank you, that is possible, I am running it inside TMPFS: tmpfs /var/tmp/portage tmpfs size=27G,uid=portage,gid=portage,mode=775,noatime 0 0 Total RAM is 64 GB. I am sorry, this possibility not came in my mind. I will test it again watching memory stats. This matches what I saw when I tries compiling firefox, it takes a lot of memory, I had to decrease the number of parallel make jobs. It seems that it was rollback data eating all the available RAM. I don't have a swap enabled to protect the SSD (M.2) drive. I was going down from -flto=16 to 8 and then 4 and it failed all. Then I saw in 'top' that konsole process started to eat 0.1 GB of RAM each few seconds and went to its Settings where I set the number of rollback lines from 835240 to 335240. Now it uses 4.5 gb in the top's RES column and it is not growing. (It failed before the LTO-WPA and LTO-LTRANS phases all the time.) I am going to test back the -flto=16. I am closing this case as RESOLVEDD/NOT A BUG. |