Bug#1146344: kmail: excessive ram use by QtWebEngineProcess

Russell Coker <[email protected]>
Newsgroups gmane.linux.debian.devel.qt-kde
Message-ID <178819190354.2.17735960704211875657.reportbug__46418.7362858624$1788192030$gmane$org@dojacat.coker.com.au>
Package: kmail
Version: 4:26.04.3-2
Severity: normal

Here is an example of the typical output of "ps auxf" showing significant
amounts of RAM used by QtWebEngineProcess spawned by kmail.

etbe        3182  0.0  2.5 3420708 404524 ?      Ssl  Aug20   4:35  \_ /usr/bin/kmail -qwindowtitle KMail
etbe        3445  0.0  0.2 442456 37528 ?        S    Aug20   0:00  |   \_ /usr/lib/qt6/libexec/QtWebEngineProcess --type=zygote --no-zygote-sandbox --dis
able-in-process-stack-traces --application-name=kmail2 --webengine-schemes=cid:slLC;qrc:sV --lang=en-AU
etbe        3446  0.0  0.2 442472 40296 ?        S    Aug20   0:00  |   \_ /usr/lib/qt6/libexec/QtWebEngineProcess --type=zygote --disable-in-process-stac
k-traces --application-name=kmail2 --webengine-schemes=cid:slLC;qrc:sV --lang=en-AU
etbe        3472  0.0  4.3 1460343556 701924 ?   Sl   Aug20   1:01  |       \_ /usr/lib/qt6/libexec/QtWebEngineProcess --type=renderer --webengine-schemes=cid:slLC;qrc:sV --disable-in-process-stack-traces --disable-speech-api --touch-events=auto --disable-databases --disable-blink-features=EyeDropperAPI,WebOTP --lang=en-AU --num-raster-threads=2 --enable-main-frame-before-activation --renderer-client-id=3 --time-ticks-at-unix-epoch=-1787210191851719 --launch-time-ticks=1612234846 --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13746217149882121545,858726675711996526,262144 --enable-features=NetworkServiceInProcess2,TracingServiceInProcess --disable-features=BackgroundFetch,EyeDropper,InstalledApp,StandardCompliantNonSpecialSchemeURLParsing,WebOTP,WebPayments,WebUSB --v
 ariations-seed-version
etbe       54681  0.0  0.4 1460054776 68340 ?    Sl   Aug23   0:00  |       \_ /usr/lib/qt6/libexec/QtWebEngineProcess --type=renderer --webengine-schemes=cid:slLC;qrc:sV --disable-in-process-stack-traces --disable-speech-api --touch-events=auto --disable-databases --disable-blink-features=EyeDropperAPI,WebOTP --lang=en-AU --num-raster-threads=2 --enable-main-frame-before-activation --renderer-client-id=7 --time-ticks-at-unix-epoch=-1787210191851719 --launch-time-ticks=70570036732 --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13746217149882121545,858726675711996526,262144 --enable-features=NetworkServiceInProcess2,TracingServiceInProcess --disable-features=BackgroundFetch,EyeDropper,InstalledApp,StandardCompliantNonSpecialSchemeURLParsing,WebOTP,WebPayments,WebUSB --
 variations-seed-version

Here are examples of free -m run before and after restarting kmail.  It seems that
most of my swap space is used by the QtWebEngineProcess children of kmail.

# free -m
               total        used        free      shared  buff/cache   available
Mem:           15758        8038         987        2410        9493        7719
Swap:           3999        3918          81
# free -m
               total        used        free      shared  buff/cache   available
Mem:           15758        7097        1489        2303        9826        8661
Swap:           3999        1717        2282

Running kmail for 12 days isn't really a lot for a desktop or laptop system.

I think that if we can't make QtWebEngineProcess use less RAM then we should
have kmail periodically restart it.  Having kmail restart it is probably a lot
easier than fixing bugs in it.

-- System Information:
Debian Release: forky/sid
Architecture: amd64 (x86_64)

Kernel: Linux 7.1.8+deb14.1-amd64 (SMP w/4 CPU threads; PREEMPT)
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8), LANGUAGE=en_AU:en
Shell: /bin/sh linked to /usr/bin/dash
Init: unable to detect

Versions of packages kmail depends on:
ii  akonadi-server                                               4:26.04.3-2
ii  kdepim-runtime                                               4:26.04.3-2
ii  kio6                                                         6.28.0-1
ii  libakonadisearch-bin                                         4:26.04.3-3
ii  libakonadisearch-plugins                                     4:26.04.3-3
ii  libc6                                                        2.43-3
ii  libgcc-s1                                                    16.2.0-1
ii  libgpg-error0                                                1.61-5
ii  libgpgmepp7                                                  2.1.0-2
ii  libgrantleetheme-plugins                                     26.04.3-2
ii  libkf6bookmarks6                                             6.28.0-1
ii  libkf6calendarcore6                                          6.28.0-1
ii  libkf6codecs6                                                6.28.0-1
ii  libkf6colorscheme6                                           6.28.0-1
ii  libkf6completion6                                            6.28.0-1
ii  libkf6configcore6                                            6.28.0-1
ii  libkf6configgui6                                             6.28.0-1
ii  libkf6configwidgets6                                         6.28.0-1
ii  libkf6contacts6                                              6.28.0-2
ii  libkf6coreaddons6                                            6.28.0-2
ii  libkf6crash6                                                 6.28.0-1
ii  libkf6dbusaddons6                                            6.28.0-1
ii  libkf6guiaddons6                                             6.28.0-1
ii  libkf6i18n6                                                  6.28.0-1
ii  libkf6iconthemes6                                            6.28.0-1
ii  libkf6iconwidgets6                                           6.28.0-1
ii  libkf6itemmodels6                                            6.28.0-1
ii  libkf6itemviews6                                             6.28.0-1
ii  libkf6jobwidgets6                                            6.28.0-1
ii  libkf6kcmutils6                                              6.28.0-1
ii  libkf6kcmutilscore6                                          6.28.0-1
ii  libkf6kiocore6                                               6.28.0-1
ii  libkf6kiofilewidgets6                                        6.28.0-1
ii  libkf6kiogui6                                                6.28.0-1
ii  libkf6kiowidgets6                                            6.28.0-1
ii  libkf6notifications6                                         6.28.0-1
ii  libkf6notifyconfig6                                          6.28.0-1
ii  libkf6parts6                                                 6.28.0-1
ii  libkf6service-bin                                            6.28.0-1
ii  libkf6service6                                               6.28.0-1
ii  libkf6sonnetui6                                              6.28.0-1
ii  libkf6statusnotifieritem6                                    6.28.0-1
ii  libkf6textaddonswidgets1                                     2.1.2-3
ii  libkf6textautocorrectioncore1                                2.1.2-3
ii  libkf6textautocorrectionwidgets1                             2.1.2-3
ii  libkf6textcustomeditor1                                      2.1.2-3
ii  libkf6textutils1                                             2.1.2-3
ii  libkf6userfeedbackcore6                                      6.28.0-1
ii  libkf6userfeedbackwidgets6                                   6.28.0-1
ii  libkf6widgetsaddons6                                         6.28.0-1
ii  libkf6windowsystem6                                          6.28.0-2
ii  libkf6xmlgui6                                                6.28.0-1
ii  libkpim6akonadiagentbase6 [libkpim6akonadiagentbase6-26.04]  4:26.04.3-2
ii  libkpim6akonadiagentwidgetbase6 [libkpim6akonadiagentwidget  4:26.04.3-2
    base6-26.04]
ii  libkpim6akonadicontactcore6 [libkpim6akonadicontactcore6-26  4:26.04.3-2
    .04]
ii  libkpim6akonadicontactwidgets6 [libkpim6akonadicontactwidge  4:26.04.3-2
    ts6-26.04]
ii  libkpim6akonadicore6 [libkpim6akonadicore6-26.04]            4:26.04.3-2
ii  libkpim6akonadimime6 [libkpim6akonadimime6-26.04]            4:26.04.3-2
ii  libkpim6akonadisearchdebug6 [libkpim6akonadisearchdebug6-26  4:26.04.3-3
    .04]
ii  libkpim6akonadisearchpim6 [libkpim6akonadisearchpim6-26.04]  4:26.04.3-3
ii  libkpim6akonadiwidgets6 [libkpim6akonadiwidgets6-26.04]      4:26.04.3-2
ii  libkpim6calendarutils6 [libkpim6calendarutils6-26.04]        4:26.04.3-2
ii  libkpim6gravatar6 [libkpim6gravatar6-26.04]                  4:26.04.3-2
ii  libkpim6identitymanagementcore6 [libkpim6identitymanagement  26.04.3-2
    core6-26.04]
ii  libkpim6identitymanagementwidgets6 [libkpim6identitymanagem  26.04.3-2
    entwidgets6-26.04]
ii  libkpim6kontactinterface6 [libkpim6kontactinterface6-26.04]  26.04.3-2
ii  libkpim6ksievecore6 [libkpim6ksievecore6-26.04]              4:26.04.3-2
ii  libkpim6ksieveui6 [libkpim6ksieveui6-26.04]                  4:26.04.3-2
ii  libkpim6ldapcore6 [libkpim6ldapcore6-26.04]                  26.04.3-2
ii  libkpim6ldapwidgets6 [libkpim6ldapwidgets6-26.04]            26.04.3-2
ii  libkpim6libkdepim6 [libkpim6libkdepim6-26.04]                4:26.04.3-2
ii  libkpim6libkleo6 [libkpim6libkleo6-26.04]                    4:26.04.3-2
ii  libkpim6mailcommon6 [libkpim6mailcommon6-26.04]              4:26.04.3-2
ii  libkpim6mailtransport6 [libkpim6mailtransport6-26.04]        26.04.3-2
ii  libkpim6messagecomposer6 [libkpim6messagecomposer6-26.04]    4:26.04.3-7
ii  libkpim6messagecore6 [libkpim6messagecore6-26.04]            4:26.04.3-7
ii  libkpim6messagelist6 [libkpim6messagelist6-26.04]            4:26.04.3-7
ii  libkpim6messageviewer6 [libkpim6messageviewer6-26.04]        4:26.04.3-7
ii  libkpim6mime6 [libkpim6mime6-26.04]                          26.04.3-2
ii  libkpim6mimetreeparser6 [libkpim6mimetreeparser6-26.04]      4:26.04.3-7
ii  libkpim6pimcommon6 [libkpim6pimcommon6-26.04]                4:26.04.3-2
ii  libkpim6pimcommonactivities6 [libkpim6pimcommonactivities6-  4:26.04.3-2
    26.04]
ii  libkpim6pimcommonakonadi6 [libkpim6pimcommonakonadi6-26.04]  4:26.04.3-2
ii  libkpim6templateparser6 [libkpim6templateparser6-26.04]      4:26.04.3-7
ii  libkpim6textedit6 [libkpim6textedit6-26.04]                  26.04.3-2
ii  libkpim6tnef6 [libkpim6tnef6-26.04]                          4:26.04.3-2
ii  libkpim6webengineviewer6 [libkpim6webengineviewer6-26.04]    4:26.04.3-7
ii  libqgpgmeqt6-15                                              2.2.0-2
ii  libqt6core6t64                                               6.10.2+dfsg-16
ii  libqt6dbus6                                                  6.10.2+dfsg-16
ii  libqt6gui6                                                   6.10.2+dfsg-16
ii  libqt6keychain1                                              0.17.0-1
ii  libqt6network6                                               6.10.2+dfsg-16
ii  libqt6webenginecore6                                         6.10.2+dfsg-5
ii  libqt6webenginecore6-bin                                     6.10.2+dfsg-5
ii  libqt6widgets6                                               6.10.2+dfsg-16
ii  libqt6xml6                                                   6.10.2+dfsg-16
ii  libstdc++6                                                   16.2.0-1

Versions of packages kmail recommends:
ii  accountwizard               4:26.04.3-2
ii  gnupg                       2.4.9-7
pn  kdepim-addons               <none>
pn  kdepim-themeeditors         <none>
pn  mbox-importer               <none>
pn  pim-data-exporter           <none>
pn  pim-sieve-editor            <none>
ii  pinentry-qt [pinentry-x11]  1.3.3-3

Versions of packages kmail suggests:
pn  clamav                                         <none>
ii  kaddressbook                                   4:26.04.3-2
pn  kleopatra                                      <none>
ii  procmail                                       3.24+really3.22-6
pn  spamassassin | bogofilter | bsfilter | crm114  <none>

-- no debconf information
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.