Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 543054 - huge memory leak in media-plugins/gst-plugins-libav-1.4.5 build with media-video/ffmpeg-2.2
Summary: huge memory leak in media-plugins/gst-plugins-libav-1.4.5 build with media-vi...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: GStreamer package maintainers
URL:
Whiteboard:
Keywords:
Depends on: ffmpeg-2.6-stable
Blocks:
  Show dependency tree
 
Reported: 2015-03-12 11:41 UTC by Yuriy
Modified: 2015-08-04 19:07 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Yuriy 2015-03-12 11:41:08 UTC
Playing html5 video in firefox 36.01 i see huge memory leaks.
With media-plugins/gst-plugins-libav-1.2.4 all good.


Reproducible: Always
Comment 1 Yuriy 2015-03-12 11:42:48 UTC
Portage 2.2.18 (python 3.3.5-final-0, default/linux/amd64/13.0/desktop/gnome/systemd, gcc-4.8.3, glibc-2.19-r1, 3.17.8-gentoo-r1 x86_64)
=================================================================
System uname: Linux-3.17.8-gentoo-r1-x86_64-Intel-R-_Core-TM-_i5-4570_CPU_@_3.20GHz-with-gentoo-2.2
KiB Mem:     8114280 total,   6473076 free
KiB Swap:    8388604 total,   7939232 free
Timestamp of repository gentoo: Wed, 11 Mar 2015 11:15:01 +0000
sh bash 4.2_p53
ld GNU ld (Gentoo 2.24 p1.4) 2.24
app-shells/bash:          4.2_p53::gentoo
dev-lang/perl:            5.20.1-r4::gentoo
dev-lang/python:          2.7.9-r1::gentoo, 3.3.5-r1::gentoo, 3.4.1::gentoo
dev-util/cmake:           2.8.12.2-r1::gentoo
dev-util/pkgconfig:       0.28-r1::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.13.11::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.13.4::gentoo
sys-devel/binutils:       2.24-r3::gentoo
sys-devel/gcc:            4.8.3::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.4::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.18::gentoo (virtual/os-headers)
sys-libs/glibc:           2.19-r1::gentoo
Repositories:

gentoo
    location: /var/portage
    sync-type: rsync
    sync-uri: rsync://rsync2.ru.gentoo.org/gentoo-portage
    priority: -1000

my
    location: /usr/local/portage
    masters: gentoo
    priority: 0

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/var/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirror.yandex.ru/"
LANG="ru_RU.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5"
PKGDIR="/var/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"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi alsa amd64 berkdb bluetooth branding bzip2 cairo cdda cli colord cracklib crypt cups cxx dbus dri dts dvd dvdr eds emboss encode evo exif fam firefox flac fortran gdbm gif glamor gnome gnome-keyring gnome-online-accounts gpm gstreamer gtk iconv introspection ipv6 jpeg lcms ldap libnotify libsecret mad mmx mng modules mp3 mp4 mpeg multilib nautilus ncurses nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds pulseaudio qt3support qt4 readline sdl session socialweb spell sse sse2 ssl startup-notification svg systemd tcpd tiff truetype udev udisks unicode upower usb vaapi vdpau vorbis wxwidgets x264 xcb xml xv xvid zlib" ABI_X86="64" ALSA_CARDS="emu10k1" 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="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ru en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" 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:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 2 sceaduwe 2015-05-30 02:17:04 UTC
I have encountered this bug. While playing videos, firefox would use quickly consume all 16G of my ram before crashing. Downgrading from 1.4.5-r1 back to 1.2.4-r1 fixed the issue.
Comment 3 Pacho Ramos gentoo-dev 2015-05-30 15:41:07 UTC
do you get the same when not applying the libav-9 patch in the ebuild?
Comment 4 Pacho Ramos gentoo-dev 2015-05-30 16:24:39 UTC
Also try with ffmpeg-2.6.3
Comment 5 Nikolay Bala 2015-05-30 16:52:34 UTC
I have the same problem with media-plugins/gst-plugins-libav-1.4.5-r1 in firefox 38.0.1
Playing any html5 videos, firefox consumes all of free ram quickly. After that, the whole system just hangs.

(In reply to Pacho Ramos from comment #3)
> do you get the same when not applying the libav-9 patch in the ebuild?

I have tried to build gst-plugins-libav without applying the libav-9 patch patch and it seems like memory leak has dissapeared.
Comment 6 Pacho Ramos gentoo-dev 2015-05-30 17:42:00 UTC
(In reply to Nikolay from comment #5)
> I have the same problem with media-plugins/gst-plugins-libav-1.4.5-r1 in
> firefox 38.0.1
> Playing any html5 videos, firefox consumes all of free ram quickly. After
> that, the whole system just hangs.
> 
> (In reply to Pacho Ramos from comment #3)
> > do you get the same when not applying the libav-9 patch in the ebuild?
> 
> I have tried to build gst-plugins-libav without applying the libav-9 patch
> patch and it seems like memory leak has dissapeared.

Please give it a few more tries and report back to remember me to drop it
Comment 7 Nikolay Bala 2015-05-30 19:20:37 UTC
(In reply to Pacho Ramos from comment #4)
> Also try with ffmpeg-2.6.3

With ffmpeg-2.6.3 and patched gst-plugins-libav-1.4.5-r1 there are no any problems.

(In reply to Pacho Ramos from comment #6)
> (In reply to Nikolay from comment #5)
> > I have the same problem with media-plugins/gst-plugins-libav-1.4.5-r1 in
> > firefox 38.0.1
> > Playing any html5 videos, firefox consumes all of free ram quickly. After
> > that, the whole system just hangs.
> > 
> > (In reply to Pacho Ramos from comment #3)
> > > do you get the same when not applying the libav-9 patch in the ebuild?
> > 
> > I have tried to build gst-plugins-libav without applying the libav-9 patch
> > patch and it seems like memory leak has dissapeared.
> 
> Please give it a few more tries and report back to remember me to drop it

Should I wait for updated ebuild first, or just try same configuration (ffmpeg-2.2.14 + gst-plugins-libav without libav-9 patch) several more times and then reply?
Comment 8 Pacho Ramos gentoo-dev 2015-05-30 19:59:10 UTC
Well... I am unsure if dropping the libav-9 patch will also affect its compat with livav-11 (the current stable) as I see before of that patch the ebuild was forcing libav-10

Maybe we could simply wait for ffmpeg-2.6 being stabilized (its stabilization is already in progress)
Comment 9 Dimitrios Semitsoglou-Tsiapos 2015-06-01 20:50:09 UTC
I can also reproduce this with 1.4.5-r1, but the problem goes away when I
remove the libav-9 patch.

It seems that it the patch is applied unconditionally. Should this really be the case on systems that are running ffmpeg?

(In reply to Pacho Ramos from comment #8)
> Maybe we could simply wait for ffmpeg-2.6 being stabilized (its
> stabilization is already in progress)

I believe users shouldn't be forced to upgrade their ffmpeg version over this.
Comment 10 Pacho Ramos gentoo-dev 2015-06-03 10:54:26 UTC
Ideally the patch should be applied always and not cause problems like this but... Personally I would drop completely the patch... but I am unsure about how will the plugin work then with current stable libav-11.3 (as I run ffmpeg only) :/
Comment 11 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2015-06-04 21:16:12 UTC
I have encountered this bug on stable firefox 32 and firefox 38. It reliably occurs when any HTML5 video is played, even as an ad or feature in a news article. YouTube is also affected. I am avoiding YouTube until this bug is fixed, but even then, because of the unexpected ads and videos in articles, I still crash.

My system will completely stall, and the disk I/O light will remain fully on. It is impossible to shutdown the system gracefully, so I have to force power-off by holding the power button down.
Comment 12 Pacho Ramos gentoo-dev 2015-08-04 19:07:55 UTC
The original should be fixed now