Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 394815 - OOM w/ sys-devel/gcc-4.5 (VirtualBox, Firefox, possible others)
Summary: OOM w/ sys-devel/gcc-4.5 (VirtualBox, Firefox, possible others)
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: Normal critical (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-12-15 13:56 UTC by Luca Santarelli
Modified: 2011-12-16 14:43 UTC (History)
2 users (show)

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


Attachments
dmesg log of the OOM (gccbug_01_dmesg_oom.txt,8.36 KB, text/plain)
2011-12-15 13:57 UTC, Luca Santarelli
Details
Last lines in the emerge output (gccbug_02_last_lines.txt,10.00 KB, text/plain)
2011-12-15 13:57 UTC, Luca Santarelli
Details
Last lines in the emerge output (after the elog echo) (gccbug_03_last_lines_2.txt,1.26 KB, text/plain)
2011-12-15 13:58 UTC, Luca Santarelli
Details
output of emerge --info =www-client/firefox-8.0 (gccbug_04_emerge--info.txt,4.33 KB, text/plain)
2011-12-15 13:58 UTC, Luca Santarelli
Details
Build log (build.log.gz,321.73 KB, application/x-gzip)
2011-12-15 14:00 UTC, Luca Santarelli
Details
Environment (gccbug_06_environment,268.49 KB, text/plain)
2011-12-15 14:01 UTC, Luca Santarelli
Details
output of emerge --info =www-client/firefox-8.0 w/ gcc-4.4.5 (gccbug_07_emerge--info_4.4.5,5.24 KB, text/plain)
2011-12-16 11:30 UTC, Luca Santarelli
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Luca Santarelli 2011-12-15 13:56:52 UTC
NOTE: I think this it a duplicate of 355861. If that's the case, however, it looks the problem is more widespread than qemu alone, so I am opening it as a new bug mentioning Firefox and Virtualbox in the subject to help further searches.

DESCRIPTION: compilation of "huge" packages worked fine on my systems with gcc-4.4 but fails with 4.5 throwing an OOM.
This was especially true of VirtualBox, where I could switch back to gcc-4.4 to compile it.
Since then, I have completely removed gcc-4.4 from my system(s), and I am using the stable gcc-4.5. Today I tried to compile the new stable Firefox (8.0) and it died twice, always ending due to a OOM killing the linker.

I don't have the VirtualBox logs anymore, but I will attach the firefox ones.

Reproducible: Always

Steps to Reproduce:
1. emerge [table gcc]
2. gcc-config [set it, if unset]
3. emerge firefox | emerge virtualbox
Actual Results:  
The emerge process exits with an error.

Expected Results:  
The emerge process completes successfully.

gentoo-vm ~ # emerge -pqv =www-client/firefox-8.0
[ebuild     U ] www-client/firefox-8.0 [7.0.1-r1] USE="alsa crashreporter dbus ipc webm -bindist -custom-cflags -custom-optimization -debug -libnotify -pgo -startup-notification -system-sqlite -wifi" LINGUAS="-af -ak -ar -ast -be -bg -bn -bn_BD -bn_IN -br -bs -ca -cs -cy -da -de -el -en -en_GB -en_US -en_ZA -eo -es -es_AR -es_CL -es_ES -es_MX -et -eu -fa -fi -fr -fy -fy_NL -ga -ga_IE -gd -gl -gu -gu_IN -he -hi -hi_IN -hr -hu -hy -hy_AM -id -is -it -ja -kk -kn -ko -ku -lg -lt -lv -mai -mk -ml -mr -nb -nb_NO -nl -nn -nn_NO -nso -or -pa -pa_IN -pl -pt -pt_BR -pt_PT -rm -ro -ru -si -sk -sl -son -sq -sr -sv -sv_SE -ta -ta_LK -te -th -tr -uk -vi -zh -zh_CN -zh_TW -zu"                                                                

luca@gentoo-vm ~ $ emerge --info
Portage 2.1.10.11 (default/linux/x86/10.0, gcc-4.5.3, glibc-2.13-r4, 3.0.6-gentoo i686)
=================================================================
System uname: Linux-3.0.6-gentoo-i686-Intel-R-_Core-TM-2_Duo_CPU_P8600_@_2.40GHz-with-gentoo-2.0.3
Timestamp of tree: Thu, 15 Dec 2011 10:15:01 +0000
distcc 3.1 i686-pc-linux-gnu [disabled]
app-shells/bash:          4.1_p9
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.2-r3, 3.1.4-r3
dev-util/cmake:           2.8.6-r4
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.0.3
sys-apps/openrc:          0.9.4
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.9.6-r3, 1.11.1
sys-devel/binutils:       2.21.1-r1
sys-devel/gcc:            4.5.3-r1
sys-devel/gcc-config:     1.4.1-r1
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r1
sys-kernel/linux-headers: 2.6.39 (virtual/os-headers)
sys-libs/glibc:           2.13-r4
Repositories: gentoo x-portage
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA dlj-1.1 Oracle-BCLA-JavaSE"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/mnt/portage/portage/distfiles"
EMERGE_DEFAULT_OPTS="--ask"
FEATURES="assume-digests binpkg-logs distlocks ebuild-locks fixlafiles fixpackages metadata-transfer news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://gentoo.osuosl.org/ http://adelie.polymtl.ca/ http://distro.ibiblio.org/pub/linux/distributions/gentoo/ "
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j1"
PKGDIR="/mnt/portage/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/mnt/portage/portage/tmp"
PORTDIR="/mnt/portage/portage/tree"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="X acl alsa berkdb bzip2 cli consolekit cracklib cxx dbus dri ffmpeg fontconfig fortran gdbm gpm hardened iconv java jpeg kde modules mudflap ncurses nls nptl nptlonly nsplugin opengl openmp pam pcre png policykit pppd qt3support qt4 readline sdl semantic-desktop session sqlite ssl sysfs threads truetype unicode x86 xml xorg zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="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 stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" 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 ubx" INPUT_DEVICES="evdev virtualbox" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="virtualbox" 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, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Luca Santarelli 2011-12-15 13:57:18 UTC
Created attachment 295913 [details]
dmesg log of the OOM
Comment 2 Luca Santarelli 2011-12-15 13:57:39 UTC
Created attachment 295915 [details]
Last lines in the emerge output
Comment 3 Luca Santarelli 2011-12-15 13:58:09 UTC
Created attachment 295917 [details]
Last lines in the emerge output (after the elog echo)
Comment 4 Luca Santarelli 2011-12-15 13:58:40 UTC
Created attachment 295919 [details]
output of emerge --info =www-client/firefox-8.0
Comment 5 Luca Santarelli 2011-12-15 14:00:59 UTC
Created attachment 295921 [details]
Build log
Comment 6 Luca Santarelli 2011-12-15 14:01:18 UTC
Created attachment 295923 [details]
Environment
Comment 7 Vladimir Varlamov 2011-12-15 15:29:09 UTC
Please attach free -m output. I think 512mb for firefox is small.
Comment 8 Luca Santarelli 2011-12-15 15:34:27 UTC
luca@gentoo-vm ~ $ free -m
             total       used       free     shared    buffers     cached
Mem:           883        732        151          0         46        460
-/+ buffers/cache:        225        657
Swap:          512        121        390

This is during compilation, I'm trying -fno-var-tracking and -fno-var-tracking-assignment as reported here: https://bugs.launchpad.net/gcc-linaro/+bug/714921
Comment 9 Luca Santarelli 2011-12-15 15:50:38 UTC
-fno-var-tracking had no effect.

System slowing down to a crawl:
luca@gentoo-vm ~ $ free -m
             total       used       free     shared    buffers     cached
Mem:           883        874          8          0          8         57
-/+ buffers/cache:        809         73
Swap:          512        317        194

Crawling even more:
luca@gentoo-vm ~ $ free -m
             total       used       free     shared    buffers     cached
Mem:           883        875          7          0          7         35
-/+ buffers/cache:        832         50
Swap:          512        478         33

Almost OOM-ing:
luca@gentoo-vm ~ $ free -m
             total       used       free     shared    buffers     cached
Mem:           883        875          7          0          7         18
-/+ buffers/cache:        849         33
Swap:          512        512          0

OOM and memory freed (emerge gurgling errors):
luca@gentoo-vm ~ $ free -m
             total       used       free     shared    buffers     cached
Mem:           883        167        715          0          8         38
-/+ buffers/cache:        121        761
Swap:          512        158        353

OOM and memory freed (console back to me):
luca@gentoo-vm ~ $ free -m
             total       used       free     shared    buffers     cached
Mem:           883        159        723          0          8         43
-/+ buffers/cache:        107        775
Swap:          512        121        391
Comment 10 Jeroen Roovers (RETIRED) gentoo-dev 2011-12-15 16:21:05 UTC
You ran out of memory. Things to do about it:

1) Install more RAM.
2) Remove "-pipe" from CFLAGS.
3) Do NOT file bug reports about it.
Comment 11 Luca Santarelli 2011-12-16 11:30:10 UTC
(In reply to comment #10)
> You ran out of memory. Things to do about it:
> 
> 1) Install more RAM.
> 2) Remove "-pipe" from CFLAGS.
> 3) Do NOT file bug reports about it.

I beg to differ. Whereas it is true that I ran out of memory, I tried a different approach:

1. emerge "<sys-devel/gcc-4.5"
2. gcc-config i686-pc-linux-gnu-4.4.5
3. source /etc/profile
4. emerge firefox

and it worked fine. The step where gcc-4.5 died due to an OOM condition never exausted the total of RAM+SWAP with gcc-4.4.5, and firefox was completed successfully, as you can see in the new attachment.
Comment 12 Luca Santarelli 2011-12-16 11:30:35 UTC
Created attachment 296019 [details]
output of emerge --info =www-client/firefox-8.0 w/ gcc-4.4.5