Bug 433610 - KDE PIM memory/CPU leak
Summary: KDE PIM memory/CPU leak
Status: RESOLVED FIXED
Alias: None
Product: kontact
Classification: Applications
Component: general (show other bugs)
Version: 5.16.3
Platform: Gentoo Packages Linux
: NOR normal
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-02-25 19:12 UTC by Felix
Modified: 2021-03-18 00:25 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
valgrind --leak-check=full --show-leak-kinds=all -s kontact (145.79 KB, text/plain)
2021-03-06 22:14 UTC, Felix
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Felix 2021-02-25 19:12:57 UTC
SUMMARY
The entire KDE PIM GUI application suite leaks memory and CPU time as it is running.

STEPS TO REPRODUCE
1. Start any Kontact process (kontact, kmail, akregator...)

OBSERVED RESULT
The process will start running at 100% or more CPU time. Memory usage will also increase by up to ~35 MB per second. These are observable through the top terminal tool.

Running the application in terminal will also output this message continuously:
[671057:671057:0225/{timestamp}:ERROR:network_service_instance_impl.cc(286)] Network service crashed, restarting service.

Closing the application when it was run in terminal will also output this message (multiple times for kontact):
kf.xmlgui: 0x5641a2dc9ad8 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes.

EXPECTED RESULT
The program runs normally and does not leak CPU time or RAM.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Gentoo Linux, updated to 2021-02-25, kernel 5.11.1
KDE Plasma Version: 5.21.1
KDE Frameworks Version: 5.79.0
Qt Version: 5.15.2

ADDITIONAL INFORMATION
The version of Kontact/KDE PIM being used is 5.16.2 (20.12.2), as is currently available in official Portage. This version was not listed in the version selector on the submission form.

emerge --info:
Portage 3.0.15 (python 3.8.8-final-0, default/linux/amd64/17.1/desktop/plasma/systemd, gcc-10.2.0, glibc-2.32-r7, 5.11.1-gentoo x86_64)
=================================================================
System uname: Linux-5.11.1-gentoo-x86_64-Intel-R-_Core-TM-_i7-8700K_CPU_@_3.70GHz-with-glibc2.2.5
KiB Mem:    16321716 total,    497456 free
KiB Swap:   20971516 total,  20969212 free
Timestamp of repository gentoo: Thu, 25 Feb 2021 17:00:01 +0000
Head commit of repository gentoo: 644ced449c9ced1c0aeae1bd7aa92acb9ab2e522
Head commit of repository megazeux: e1413e83aacaf6319057d3a9bbb8a1bee0486a9f

sh bash 5.1_p4
ld GNU ld (Gentoo 2.35.2 p1) 2.35.2
app-shells/bash:          5.1_p4::gentoo
dev-java/java-config:     2.3.1::gentoo
dev-lang/perl:            5.32.1::gentoo
dev-lang/python:          2.7.18_p7::gentoo, 3.7.10::gentoo, 3.8.8::gentoo, 3.9.2::gentoo
dev-util/cmake:           3.19.6::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.7-r1::gentoo
sys-apps/sandbox:         2.20::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r5::gentoo
sys-devel/automake:       1.16.3-r1::gentoo
sys-devel/binutils:       2.35.2::gentoo
sys-devel/gcc:            10.2.0-r5::gentoo
sys-devel/gcc-config:     2.3.3::gentoo
sys-devel/libtool:        2.4.6-r6::gentoo
sys-devel/make:           4.3::gentoo
sys-kernel/linux-headers: 5.11::gentoo (virtual/os-headers)
sys-libs/glibc:           2.32-r7::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-verify-jobs: 1
    sync-rsync-verify-max-age: 24
    sync-rsync-verify-metamanifest: yes
    sync-rsync-extra-opts: 

megazeux
    location: /var/db/repos/megazeux
    sync-type: git
    sync-uri: https://github.com/Spectere/megazeux-overlay.git
    masters: gentoo

anomen
    location: /var/lib/layman/anomen
    masters: gentoo
    priority: 50

bobwya
    location: /var/lib/layman/bobwya
    masters: gentoo
    priority: 50

jm-overlay
    location: /var/lib/layman/jm-overlay
    masters: gentoo
    priority: 50

pentoo
    location: /var/lib/layman/pentoo
    masters: gentoo
    priority: 50

snapd
    location: /var/lib/layman/snapd
    masters: gentoo
    priority: 50

sorrow
    location: /var/lib/layman/sorrow
    masters: gentoo
    priority: 50

thegreatmcpain
    location: /var/lib/layman/thegreatmcpain
    masters: gentoo bobwya
    priority: 50

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="@FREE Oracle-BCLA-JavaSE Vivaldi ValveSteamLicense NVIDIA-r2 all-rights-reserved MPEG-4 linux-fw-redistributable openssl Snes9x"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/angband/gamedata/ /etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.4/ext-active/ /etc/php/cgi-php7.4/ext-active/ /etc/php/cli-php7.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://gentoo.gossamerhost.com rsync://gentoo.gossamerhost.com/gentoo-distfiles/ ftp://mirrors.tera-byte.com/pub/gentoo http://gentoo.mirrors.tera-byte.com/ rsync://mirrors.tera-byte.com/gentoo ftp://mirror.csclub.uwaterloo.ca/gentoo-distfiles/ https://mirror.csclub.uwaterloo.ca/gentoo-distfiles/ http://mirror.csclub.uwaterloo.ca/gentoo-distfiles/"
LANG="en_CA.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi activities alsa amd64 berkdb bluetooth branding bzip2 cairo cdda cdr cli crypt cups dbus declarative dri dts dvd dvdr emboss encode exif ffmpeg flac fontconfig fortran gdbm gif gles gpm gtk gui hscolour iconv icu ipv6 java jpeg json kde kipi kwallet lcms libglvnd libnotify libtirpc lm-sensors lm_sensors lua lvm mad matroska mng modplug mp3 mp4 mpeg multilib ncurses networkmanager nls nptl ogg openal opengl openmp opus pam pango pcre pdf phonon plasma plymouth png policykit ppds pulseaudio python qml qt5 readline samba sdl seccomp semantic-desktop sftp spell split-usr sqlite ssh ssl startup-notification svg systemd tcpd theora threads tiff truetype udev udisks unicode upower usb vaapi vorbis vulkan wayland webkit webp widgets wxwidgets x264 x265 xattr xcb xml xv xvid zlib" ABI_X86="64" ADA_TARGET="gnat_2018" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sse sse2 sse3 sse4_1 sse4_2 ssse3" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="linux" L10N="en-CA en-GB en-US en fr-CA fr ja" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-3 php7-4" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_8" PYTHON_TARGETS="python3_7 python3_8" RUBY_TARGETS="ruby30 ruby27 ruby25" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, MAKEOPTS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Christophe Marin 2021-03-02 09:39:10 UTC
Which process is leaking? did you run valgrind to get information?
Comment 2 Felix 2021-03-06 22:14:30 UTC
Created attachment 136443 [details]
valgrind --leak-check=full --show-leak-kinds=all -s kontact

Please note that I have not used Valgrind before, so I'm mostly just going by the suggestions made by the program itself as far as flags used. Please let me know if you need more or different information.
Comment 3 Matthew Dawson 2021-03-14 19:00:49 UTC
This issue is likely caused by an downstream issue in Gentoo's qtwebengine package (see here: https://bugs.gentoo.org/773919 ).  Can you try taking the steps outlined in this comment: https://bugs.gentoo.org/773919#c21 and see if that resolves your problem?
Comment 4 Felix 2021-03-18 00:25:32 UTC
Yes, that fixed the problem. Thank you for the help.