Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 538596 - sys-apps/memtest86+-5.01 - test.c: In function ‘movinvr’: test.c:350:25: error: inconsistent operand constraints in an ‘asm’
Summary: sys-apps/memtest86+-5.01 - test.c: In function ‘movinvr’: test.c:350:25: erro...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
: 610104 (view as bug list)
Depends on:
Blocks: 609100
  Show dependency tree
 
Reported: 2015-02-02 22:29 UTC by Thomas Capricelli
Modified: 2017-03-14 23:37 UTC (History)
11 users (show)

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


Attachments
Disables PIE in test.c (hardened_test_nopie.patch,551 bytes, patch)
2015-07-25 12:40 UTC, Alexander
Details | Diff
patch to remove ebx from asm blocks in test.c (memtest86+-5.01-test_c_noebx.patch,7.61 KB, patch)
2016-12-25 10:58 UTC, Peter Fox
Details | Diff
improved patch to remove ebx from asm blocks in test.c (memtest86+-5.01-test_c_noebx.patch,10.81 KB, patch)
2016-12-26 20:23 UTC, Peter Fox
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Capricelli 2015-02-02 22:29:43 UTC
emerge fails on my stable "amd64"


I have this in make.conf
    CFLAGS="-march=native -O2 -pipe"

and mycompiler is :
   verdi portage # gcc --version
   gcc (Gentoo Hardened 4.8.4 p1.0, pie-0.6.1) 4.8.4

Previous versions (until 4.20-r2) were installed without any problem.

Reproducible: Always




full portage/sys-apps/memtest86+-5.01/temp/build.log:

 * Package:    sys-apps/memtest86+-5.01
 * Repository: gentoo
 * Maintainer: base-system@gentoo.org
 * USE:        abi_x86_64 amd64 elibc_glibc kernel_linux userland_GNU
 * FEATURES:   preserve-libs sandbox userpriv usersandbox
 * Applying memtest86+-5.01-gcc-473.patch ...
 [ ok ]
 * Applying memtest86+-5.01-hardcoded_cc.patch ...
 [ ok ]
rm -f *.o *.s *.iso memtest.bin memtest memtest_shared \
    memtest_shared.bin memtest.iso
x86_64-pc-linux-gnu-gcc -E -traditional head.S -o head.s
x86_64-pc-linux-gnu-gcc -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -fno-strict-aliasing reloc.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o main.o main.c
x86_64-pc-linux-gnu-gcc -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding test.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o init.o init.c
test.c: In function ‘movinvr’:
test.c:350:25: error: inconsistent operand constraints in an ‘asm’
                         asm __volatile__ (
                         ^
test.c:414:5: error: inconsistent operand constraints in an ‘asm’
     asm __volatile__ (
     ^
Makefile:56: recipe for target 'test.o' failed
make: *** [test.o] Error 1
make: *** Waiting for unfinished jobs....
 * ERROR: sys-apps/memtest86+-5.01::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=sys-apps/memtest86+-5.01::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=sys-apps/memtest86+-5.01::gentoo'`.
 * The complete build log is located at '/usr/unsecure/tmp/portage/sys-apps/memtest86+-5.01/temp/build.log'.
 * The ebuild environment file is located at '/usr/unsecure/tmp/portage/sys-apps/memtest86+-5.01/temp/environment'.
 * Working directory: '/usr/unsecure/tmp/portage/sys-apps/memtest86+-5.01/work/memtest86+-5.01'
 * S: '/usr/unsecure/tmp/portage/sys-apps/memtest86+-5.01/work/memtest86+-5.01'
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2015-02-04 08:45:01 UTC
Please post your `emerge --info' output in a comment.
Comment 2 Thomas Capricelli 2015-02-04 11:47:39 UTC
verdi ~ # emerge --info
Portage 2.2.14 (python 2.7.9-final-0, hardened/linux/amd64, gcc-4.8.4, glibc-2.19-r1, 3.13.6-vs2.3.6.11 x86_64)
=================================================================
System uname: Linux-3.13.6-vs2.3.6.11-x86_64-AMD_Athlon-tm-_II_X2_280_Processor-with-gentoo-2.2
KiB Mem:     7927432 total,    309836 free
KiB Swap:    2097148 total,   2035140 free
Timestamp of tree: Wed, 04 Feb 2015 09:45:01 +0000
ld GNU ld (Gentoo 2.24 p1.4) 2.24
app-shells/bash:          4.2_p53
dev-lang/perl:            5.18.2-r2
dev-lang/python:          2.7.9-r1
dev-util/cmake:           2.8.12.2-r1
dev-util/pkgconfig:       0.28-r1
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.13.8
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.69
sys-devel/automake:       1.11.6-r1, 1.13.4
sys-devel/binutils:       2.24-r3
sys-devel/gcc:            4.8.4, 4.9.2
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.4
sys-devel/make:           4.0-r1
sys-kernel/linux-headers: 3.16 (virtual/os-headers)
sys-libs/glibc:           2.19-r1
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.fr.gentoo.org/gentoo-portage
    priority: -1000

freehackers
    location: /usr/exports/portage-overlay
    masters: gentoo                                                                                                                                           
    priority: 0                                                                                                                                               
                                                                                                                                                              
Installed sets: @system                                                                                                                                       
ABI="amd64"                                                                                                                                                   
ABI_X86="64"                                                                                                                                                  
ACCEPT_KEYWORDS="amd64"                                                                                                                                       
ACCEPT_LICENSE="*"                                                                                                                                            
ACCEPT_PROPERTIES="*"                                                                                                                                         
ACCEPT_RESTRICT="*"                                                                                                                                           
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" 
ARCH="amd64"                                                                                                                                                  
AUTOCLEAN="yes"                                                                                                                                               
BOOTSTRAP_USE="cxx unicode internal-glib python_targets_python3_3 python_targets_python2_7 multilib hardened pax_kernel pic xtpax -jit -orc"                  
CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author"                                                                    
CAMERAS="canon"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CFLAGS_amd64="-m64"
CFLAGS_x32="-mx32"
CFLAGS_x86="-m32"
CHOST="x86_64-pc-linux-gnu"
CHOST_amd64="x86_64-pc-linux-gnu"
CHOST_x32="x86_64-pc-linux-gnux32"
CHOST_x86="i686-pc-linux-gnu"
CLEAN_DELAY="5"
COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog"
COLLISION_IGNORE="/lib/modules/* *.py[co] *$py.class */dropin.cache"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/bind /var/spool/munin-async/.ssh"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a"
CXXFLAGS="-march=native -O2 -pipe"
DEFAULT_ABI="amd64"
DISPLAY="localhost:10.0"
DISTDIR="/usr/portage/distfiles"
EDITOR="/usr/bin/vi"
ELIBC="glibc"
EMERGE_WARNING_DELAY="10"
EPREFIX=""
EROOT="/"
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 xattr"
FETCHCOMMAND="wget -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
FETCHCOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}""
FETCHCOMMAND_SFTP="bash -c "x=\${2#sftp://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; eval \"declare -a ssh_opts=(\${3})\" ; exec sftp -P \${port} \"\${ssh_opts[@]}\" \"\${host}:/\${x#*/}\" \"\$1\"" sftp "${DISTDIR}/${FILE}" "${URI}" "${PORTAGE_SSH_OPTS}""
FETCHCOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec rsync --rsh=\"ssh -p\${port} \${3}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}" "${PORTAGE_SSH_OPTS}""
FFLAGS="-O2 -pipe"
GCC_SPECS=""
GENTOO_MIRRORS="http://gentoo.modulix.net/gentoo/ http://mirrors.linuxant.fr/distfiles.gentoo.org/ http://mirror.ovh.net/gentoo-distfiles/ ftp://ftp.free.fr/mirrors/ftp.gentoo.org"
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"
GRUB_PLATFORMS=""
HG="/usr/bin/hg"
HOME="/root"
INFOPATH="/usr/share/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.8.4/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.24/info:/usr/share/info/emacs-24"
INPUT_DEVICES="evdev"
IUSE_IMPLICIT="abi_x86_64 prefix prefix-guest"
KERNEL="linux"
LANG="en_US.UTF-8"
LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text"
LC_ALL="en_US.UTF-8"
LC_MESSAGES="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LDFLAGS_amd64="-m elf_x86_64"
LDFLAGS_x32="-m elf32_x86_64"
LDFLAGS_x86="-m elf_i386"
LESS="-R -M --shift 5"
LESSOPEN="|lesspipe %s"
MAKEOPTS="-j 3"
MANPATH="/usr/local/share/man:/usr/share/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.8.4/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.24/man:/usr/lib64/erlang/man"
MULTILIB_ABIS="amd64 x86"
MULTILIB_STRICT_DENY="64-bit.*shared object"
MULTILIB_STRICT_DIRS="/lib32 /lib /usr/lib32 /usr/lib /usr/kde/*/lib32 /usr/kde/*/lib /usr/qt/*/lib32 /usr/qt/*/lib /usr/X11R6/lib32 /usr/X11R6/lib"
MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage|udev|systemd|clang|python-exec)"
MULTIOSDIRS="../lib64:../lib32"
NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml"
OFFICE_IMPLEMENTATION="libreoffice"
OPENGL_PROFILE="xorg-x11"
PAGER="/usr/bin/less"
PATH="/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.8.4"
PHP_TARGETS="php5-5"
PKGDIR="/usr/portage/packages"
PORTAGE_ARCHLIST="ppc sparc64-freebsd ppc-openbsd x86-openbsd ppc64 x86-winnt x86-fbsd ppc-aix alpha arm x86-freebsd s390 amd64 arm-linux x86-macos x64-openbsd ia64-hpux hppa x86-netbsd ppc64-linux x86-cygwin amd64-linux ia64-linux x86 sparc-solaris x64-freebsd sparc64-solaris x86-linux x64-macos sparc m68k-mint ia64 mips ppc-macos x86-interix hppa-hpux amd64-fbsd x64-solaris m68k sh arm64 x86-solaris sparc-fbsd"

main-repo = gentoo

[freehackers]
location = /usr/exports/portage-overlay
masters = gentoo
priority = 0

[gentoo]
location = /usr/unsecure/portage
masters = 
priority = -1000
sync-type = rsync
sync-uri = rsync://rsync.fr.gentoo.org/gentoo-portage
"
PORTAGE_RSYNC_EXTRA_OPTS="--exclude ChangeLog"
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_RSYNC_RETRIES="-1"
PORTAGE_SYNC_STALE="30"
PORTAGE_TMPDIR="/var/tmp"
PORTAGE_VERBOSE="1"
PORTAGE_WORKDIR_MODE="0700"
PORTAGE_XATTR_EXCLUDE="security.* system.nfs4_acl"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/exports/portage-overlay"
PORT_LOGDIR_CLEAN="find "${PORT_LOGDIR}" -type f ! -name "summary.log*" -mtime +7 -delete"
PROFILE_IS_HARDENED="1"
PROFILE_ONLY_VARIABLES="ARCH ELIBC IUSE_IMPLICIT KERNEL USERLAND USE_EXPAND_IMPLICIT USE_EXPAND_UNPREFIXED USE_EXPAND_VALUES_ARCH USE_EXPAND_VALUES_ELIBC USE_EXPAND_VALUES_KERNEL USE_EXPAND_VALUES_USERLAND"
PWD="/root"
PYTHONDONTWRITEBYTECODE="1"
PYTHONPATH="/root/web-apps/django-1.7/"
PYTHON_SINGLE_TARGET="python2_7"
PYTHON_TARGETS="python2_7"
QEMU_SOFTMMU_TARGETS="i386 x86_64"
QEMU_USER_TARGETS="i386 x86_64"
QT_GRAPHICSSYSTEM="raster"
RESUMECOMMAND="wget -c -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
RESUMECOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}""
RESUMECOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec rsync --rsh=\"ssh -p\${port} \${3}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}" "${PORTAGE_SSH_OPTS}""
ROOT="/"
ROOTPATH="/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.8.4"
RPMDIR="/usr/portage/rpm"
RUBY_TARGETS="ruby19 ruby20"
SHELL="/bin/bash"
SHLVL="1"
SSH_CLIENT="10.11.3.3 50029 2223"
SSH_CONNECTION="10.11.3.3 50029 82.225.154.2 2223"
SSH_TTY="/dev/pts/3"
SYMLINK_LIB="yes"
SYNC="rsync://rsync.fr.gentoo.org/gentoo-portage"
TERM="xterm"
TEXINPUTS="/usr/lib64/ocaml/ocamldoc:"
UNINSTALL_IGNORE="/lib/modules/*"
USE="3dnow 3dnowext a52 aac acl alsa amd64 berkdb bidi bittorrent bzip2 cairo cdda cdio city clamdtop cli cracklib crypt cups cxx dbus dga dri dts dvd dvdnav dvdread eigen encode excel extensions fam fasttrack fbcon fbdev ffmpeg fftw flac font-server fontconfig fortran freetype gd geoip gif git gnutella gnutls gphoto2 gs hal hardened httpd iconv imap innodb inotify ipv6 jpeg jpeg2k justify kpathsea latex libav libextractor lirc live lm_sensors lua lvm lzo mad math matroska mmx mmxext mng mod_muc mod_pubsub modules mp2 mp3 mpeg multilib mysql ncurses nls nptl nptlonly ogg oggvorbis openexr openmp oss pam pax_kernel pcre pdf perlsuid png popcnt python qt3support quicktime rdesktop readline real server session sha512 slp smp speex sqlite sqlite3 sse sse2 sse3 sse4a ssl stream svg tcpd theora threads thumbnail tiff truetype unicode urandom usb v4l v4l2 vcd vhosts vim-syntax vlm vorbis webkit webp wifi win32codecs x264 xattr xetex xtpax xv xvid zaptel zlib" ABI_X86="64" 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="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="canon" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a" 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="en it fr" LIRC_DEVICES="pctv" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="vesa s3" 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"
Comment 3 Toralf Förster gentoo-dev 2015-02-09 20:34:59 UTC
still a problem with 4.9.2 :



>>> Verifying ebuild manifests
>>> Emerging (1 of 1) sys-apps/memtest86+-5.01::gentoo
>>> Failed to emerge sys-apps/memtest86+-5.01, Log file:
>>>  '/var/log/portage/sys-apps:memtest86+-5.01:20150209-201110.log'
 * Package:    sys-apps/memtest86+-5.01
 * Repository: gentoo
 * Maintainer: base-system@gentoo.org
 * USE:        abi_x86_64 amd64 elibc_glibc kernel_linux userland_GNU
 * FEATURES:   preserve-libs sandbox userpriv usersandbox
 * Applying memtest86+-5.01-gcc-473.patch ...
 [ ok ]
 * Applying memtest86+-5.01-hardcoded_cc.patch ...
 [ ok ]
rm -f *.o *.s *.iso memtest.bin memtest memtest_shared \
	memtest_shared.bin memtest.iso
x86_64-pc-linux-gnu-gcc -E -traditional head.S -o head.s
x86_64-pc-linux-gnu-as -32  -o head.o head.s
x86_64-pc-linux-gnu-gcc -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -fno-strict-aliasing reloc.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o main.o main.c
x86_64-pc-linux-gnu-gcc -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding test.c
test.c: In function ‘movinvr’:
test.c:350:25: error: inconsistent operand constraints in an ‘asm’
                         asm __volatile__ (
                         ^
test.c:414:5: error: inconsistent operand constraints in an ‘asm’
     asm __volatile__ (
     ^
Makefile:56: recipe for target 'test.o' failed
make: *** [test.o] Error 1
 * ERROR: sys-apps/memtest86+-5.01::gentoo failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=sys-apps/memtest86+-5.01::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=sys-apps/memtest86+-5.01::gentoo'`.
 * The complete build log is located at '/var/log/portage/sys-apps:memtest86+-5.01:20150209-201110.log'.
 * For convenience, a symlink to the build log is located at '/var/tmp/portage/sys-apps/memtest86+-5.01/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-apps/memtest86+-5.01/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-apps/memtest86+-5.01/work/memtest86+-5.01'
 * S: '/var/tmp/portage/sys-apps/memtest86+-5.01/work/memtest86+-5.01'


! ! !  This is a build bot chroot image at a hardened amd64 host ! ! !

Portage 2.2.15 (python 3.3.5-final-0, hardened/linux/amd64, gcc-4.9.2, glibc-2.20-r1, 3.18.5-hardened-r1 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.18.5-hardened-r1-x86_64-Intel-R-_Core-TM-_i7-3770_CPU_@_3.40GHz-with-gentoo-2.2
KiB Mem:    16166860 total,   4055468 free
KiB Swap:   16777212 total,  16752452 free
Timestamp of tree: Mon, 09 Feb 2015 14:45:01 +0000
sh bash 4.3_p33-r1
ld GNU ld (Gentoo 2.24 p1.4) 2.24
app-shells/bash:          4.3_p33-r1
dev-java/java-config:     2.2.0
dev-lang/perl:            5.20.1-r4
dev-lang/python:          2.7.9-r1, 3.3.5-r1
dev-util/cmake:           3.1.0
dev-util/pkgconfig:       0.28-r2
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.13.9
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.69
sys-devel/automake:       1.13.4, 1.15
sys-devel/binutils:       2.24-r3
sys-devel/gcc:            4.9.2
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.5
sys-devel/make:           4.1-r1
sys-kernel/linux-headers: 3.18 (virtual/os-headers)
sys-libs/glibc:           2.20-r1
Repositories: gentoo
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--nospinner --tree --quiet-build --quiet --deep --jobs 1"
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 xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirror.leaseweb.com/gentoo/ http://ftp.uni-erlangen.de/pub/mirrors/gentoo http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/ http://gd.tuwien.ac.at/opsys/linux/gentoo/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j1"
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"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="X acl aes-ni alsa amd64 apache2 avx avx2 berkdb bzip2 cli corefonts cracklib crypt cups cxx dbus dnssec dri drmkms dvd ecc extraengine fontconfig fortran fpm gdbm gtk gudev gui hardened iconv isag jpeg justify libav libvirtd logrotate macvtap mbox minizip mmx modules multilib mysql ncurses nls nptl ogg opengl openmp pam pax_kernel pcre plasma png policykit qemu qt3support qt4 readline session spice sse sse2 sse4 sse4_1 sse4_2 ssh-askpass ssl ssse3 tcpd theora thinkpad threads tk tls truetype uml unicode urandom usb usbredir uxa v4l v4l2 vaapi video vorbis xa xattr xmp xscreensaver xtpax xvfb xvmc zenmap zlib" ABI_X86="64" 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="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 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="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_GB" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGET S="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" 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, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON


The build log is stored in /var/log/portage/_emerge_20150209-211115.log
The chroot image is amd64-unstable-hardened
Comment 4 Thomas Capricelli 2015-02-17 23:07:50 UTC
I have the problem as well on an (not so) old system with :

gcc (Gentoo Hardened 4.8.3 p1.1, pie-0.5.9) 4.8.3
Comment 5 Gilles Dartiguelongue (RETIRED) gentoo-dev 2015-02-21 21:49:27 UTC
Same while upgrading my ~amd64 machines. Here is the emerge --info of one of the affected boxes.

Error happens with gcc-4.8 and 4.9 alike.

# emerge --info
Portage 2.2.17 (python 3.3.5-final-0, hardened/linux/amd64, gcc-4.9.2, glibc-2.20-r2, 3.18.3-hardened x86_64)
=================================================================
System uname: Linux-3.18.3-hardened-x86_64-Intel-R-_Core-TM-_i3-2100_CPU_@_3.10GHz-with-gentoo-2.2
KiB Mem:     7874880 total,   1713600 free
KiB Swap:    8388604 total,   8200120 free
Timestamp of repository gentoo: Thu, 19 Feb 2015 22:00:01 +0000
sh bash 4.3_p33-r1
ld GNU ld (Gentoo 2.25 p1.0) 2.25
distcc 3.2rc1 x86_64-pc-linux-gnu [disabled]
app-shells/bash:          4.3_p33-r1::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.9-r2::gentoo, 3.3.5-r1::gentoo
dev-util/cmake:           3.1.0::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.13.10::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.69::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25::gentoo
sys-devel/gcc:            4.7.4::gentoo, 4.8.4::gentoo, 4.9.2::gentoo
sys-devel/gcc-config:     1.8::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.19::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

eva-s-crossdev-overlay
    location: /var/lib/layman/eva-crossdev
    masters: gentoo
    priority: 0

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

Installed sets: @devel, @local, @media-center, @network, @portage-extras, @server, @system-extras, @system-extras-phys, @temp
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=corei7-avx -mno-aes -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/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=corei7-avx -mno-aes -pipe"
DISTDIR="/var/tmp/distfiles"
EMERGE_DEFAULT_OPTS="--load=6.0 --jobs=4"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildpkg clean-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 xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
MAKEOPTS="-l6.0 -j6"
PKGDIR="/var/tmp/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="acl amd64 audit avahi bzip2 caps cli cracklib crypt dbus device-mapper dri flac hardened iconv icu ipv6 jpeg jpg justify mmx modules multilib ncurses netlink nls nptl ntp ogg openmp orc pam pax_kernel pcre png readline session sse sse2 ssl tcpd threads unicode urandom utf8 vim xattr xattrs xtpax zeroconf zlib" ABI_X86="64" ALSA_CARDS="hda-intel" 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" APACHE2_MPMS="prefork" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="apache cpu disk entropy interface iptables load logfile md memory nfs rrdtool swap syslog tail network write_graphite write_http" CPU_FLAGS_X86="avx 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" GRUB_PLATFORMS="pc efi-64" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="fr en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" QEMU_SOFTMMU_TARGETS="x86_64 i386" QEMU_USER_TARGETS="x86_64 i386" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="intel" 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, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 6 Thomas Capricelli 2015-03-21 03:38:11 UTC
Hit again on a brand new gentoo ~amd64 install. Same failure.
Comment 7 Joshua Kinard gentoo-dev 2015-04-18 20:02:22 UTC
Long standing bug on my box.  Possible hardened issue?

emerge --info:
Portage 2.2.18 (python 2.7.9-final-0, hardened/linux/amd64, gcc-4.9.2, glibc-2.20-r2, 3.19.3 x86_64)
=================================================================
System uname: Linux-3.19.3-x86_64-Intel-R-_Core-TM-_i7_CPU_960_@_3.20GHz-with-gentoo-2.2
KiB Mem:    16518256 total,   2323004 free
KiB Swap:    4209024 total,   4208320 free
Timestamp of repository gentoo: Sat, 18 Apr 2015 18:15:01 +0000
sh bash 4.3_p33-r2
ld GNU ld (Gentoo 2.25 p1.0) 2.25
distcc 3.2rc1 x86_64-pc-linux-gnu [disabled]
ccache version 3.2.1 [disabled]
app-shells/bash:          4.3_p33-r2::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.9-r2::gentoo, 3.2.5-r6::gentoo, 3.3.5-r1::gentoo, 3.4.3::gentoo
dev-util/ccache:          3.2.1-r1::gentoo
dev-util/cmake:           3.2.1::gentoo
dev-util/pkgconfig:       0.28-r2::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-r1::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.12.6::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25::gentoo
sys-devel/gcc:            4.7.4::gentoo, 4.9.2::gentoo
sys-devel/gcc-config:     1.8::gentoo
sys-devel/libtool:        2.4.6-r1::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.19::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.us.gentoo.org/gentoo-portage
    priority: -1000

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

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=corei7 -mtune=corei7  -mfpmath=sse -msse -msse2 -mssse3 -msse4.1 -msse4.2  -mcx16 -msahf -mcrc32 -maccumulate-outgoing-args  -fforce-addr -fmodulo-sched -fivopts  -ftree-loop-im -ftree-loop-linear -ftree-loop-ivcanon  -fgcse-after-reload -fgcse-lm -fgcse-sm -fgcse-las  -floop-interchange -ftree-loop-distribution -floop-strip-mine -floop-block  -ftree-vectorize -flto=8 -fuse-linker-plugin"
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/init.d /etc/pam.d /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=corei7 -mtune=corei7  -mfpmath=sse -msse -msse2 -mssse3 -msse4.1 -msse4.2  -mcx16 -msahf -mcrc32 -maccumulate-outgoing-args  -fforce-addr -fmodulo-sched -fivopts  -ftree-loop-im -ftree-loop-linear -ftree-loop-ivcanon  -fgcse-after-reload -fgcse-lm -fgcse-sm -fgcse-las  -floop-interchange -ftree-loop-distribution -floop-strip-mine -floop-block  -ftree-vectorize -flto=8 -fuse-linker-plugin"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs candy cgroup config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms sign unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="    http://mirror.mcs.anl.gov/pub/gentoo/    http://gentoo.osuosl.org/    http://www.gtlib.gatech.edu/pub/gentoo    http://mirror.usu.edu/mirrors/gentoo/    http://mirror.csclub.uwaterloo.ca/gentoo-distfiles/    http://gentoo.arcticnetwork.ca/ "
INSTALL_MASK="/usr/lib/systemd /etc/systemd"
LANG="en_US.iso885915"
LDFLAGS="-O2 -march=corei7 -mtune=corei7  -mfpmath=sse -msse -msse2 -mssse3 -msse4.1 -msse4.2  -mcx16 -msahf -mcrc32 -maccumulate-outgoing-args  -fforce-addr -fmodulo-sched -fivopts  -ftree-loop-im -ftree-loop-linear -ftree-loop-ivcanon  -fgcse-after-reload -fgcse-lm -fgcse-sm -fgcse-las  -floop-interchange -ftree-loop-distribution -floop-strip-mine -floop-block  -ftree-vectorize -flto=8 -fuse-linker-plugin -Wl,-z,now -Wl,-z,relro"
MAKEOPTS="-j9"
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"
PORTAGE_TMPDIR="/ramfs"
USE="amd64 apache2 berkdb bzip2 cli cracklib curl cxx dbus dri encode gd gdbm graphite hardened inotify ipv6 justify lto mmx mmxext modules multilib ncurses nptl nptlonly offensive openmp pam pax_kernel pcre pic readline real rtc session sqlite sse sse2 ssl tcpd unicode urandom xattr xml xtpax zlib" ABI_X86="64 32" 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="actions alias auth_basic auth_digest authn_anon authn_dbd 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 dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so 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="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="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="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="vesa vga fbdev" 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, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 8 Alexander 2015-07-25 12:40:04 UTC
Created attachment 407586 [details, diff]
Disables PIE in test.c

This indeed seems to be a conflict with the Hardened profile.

Simply passing -nopie to gcc when building test.c seems to do the trick. However if I am not mistaken, this will cause build errors with non-hardened profiles where -nopie is not a gcc build option.
I am not sure how we'd handle that; is there a good way to conditionally apply patches in the ebuild based on selected profile?
Comment 9 Thomas Capricelli 2016-01-30 01:05:50 UTC
confirm the problem on yet another box with sys-apps/memtest86+-5.01-r1
(the new box is hardened/linux/amd64, too)
Comment 10 Thomas Capricelli 2016-05-16 15:15:34 UTC
The bug is still there as of today.
Comment 11 El Goretto 2016-09-16 18:35:22 UTC
Same issue here on a 'hardened/linux/amd64' gentoo.
Comment 12 Peter Fox 2016-12-25 10:58:47 UTC
Created attachment 457366 [details, diff]
patch to remove ebx from asm blocks in test.c

This patch removes the use of the ebx register in the asm blocks in test.c. It compiles now, but I haven't had chance to test if the resulting binary works or not.
Comment 13 Peter Fox 2016-12-25 11:28:20 UTC
My system is not hardened, emerge --info:

Portage 2.3.0 (python 3.4.5-final-0, default/linux/amd64/13.0, gcc-4.9.4, glibc-2.22-r4, 4.4.30-gentoo x86_64)
=================================================================
System uname: Linux-4.4.30-gentoo-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q9400_@_2.66GHz-with-gentoo-2.3
KiB Mem:     8048656 total,    653960 free
KiB Swap:    8388604 total,   8096752 free
Timestamp of repository gentoo: Fri, 23 Dec 2016 04:00:01 +0000
sh bash 4.3_p48-r1
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
app-shells/bash:          4.3_p48-r1::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.22.3_rc4::gentoo
dev-lang/python:          2.7.12-r102::sage-on-gentoo, 3.4.5::gentoo
dev-util/cmake:           3.6.3::gentoo
dev-util/pkgconfig:       0.28-r3::gentoo
sys-apps/baselayout:      2.3::gentoo
sys-apps/openrc:          0.22.4::gentoo
sys-apps/sandbox:         2.10-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.10.3-r1::gentoo, 1.11.6-r1::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25.1-r1::gentoosys-devel/libtool:        2.4.6-r2::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers)
sys-libs/glibc:           2.22-r4::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

sage-on-gentoo
    location: /usr/portage/local/layman/sage-on-gentoo
    masters: gentoo
    priority: 0

peterfox
    location: /home/gentoo/portage
    masters: gentoo
    priority: 2

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 /etc/stunnel/stunnel.conf /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/home/gentoo/distfiles"
EMERGE_DEFAULT_OPTS="--autounmask-keep-masks"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="ftp://newtv.peter.fox/ ftp://cooler.peter.fox/ ftp://ftp.peter.fox/ http://distfiles.gentoo.org"
LANG="en_GB"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5"
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="3dnow 3dnowext X aalib acl acpi aiglx alsa amd64 apache2 audiofile berkdb bzip2 cairo caps cdr cli consolekit cracklib crypt cups curl cxx dbus dri dvb dvdr eds encode exif ffmpeg firefox flac fortran gd gdbm gif gimp gimpprint gnutls gphoto2 gstreamer gtk gtk2 gtkhtml iconv icu imagemagick imlib jack java jbig jpeg jpeg2k lcms lirc lucene lynxkeymap mad mate mbox midi mikmod mmx mmxext mng modules mozilla mp3 mpeg multilib ncurses nls nptl nptlonly ogg oggvorbis opengl openmp pam pcre pdf png python qemu-fast qt3support quicktime readline sdl seccomp session softmmu speex spell sqlite sse sse2 sse3 ssl svg tcpd tetex theora tiff truetype udev unicode usb v4l vorbis win32codecs wmf xattr xcb xml xulrunner xv xvid xvmc zlib" ABI_X86="64 32" 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="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_hos\t authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagema\p include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling statu\s unique_id userdir usertrack vhost_alias slotmem_shm authn_core authz_core unixd socache_shmcb" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="digigr8 spca50x barbie directory sq905 ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 sse4_1 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="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_GB" LIRC_DEVICES="devinput" OFFICE_IMPLEMENTATION="libreoffice" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby21" SANE_BACKENDS="snapscan" USERLAND="GNU" VIDEO_CARDS="intel" 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, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON


sys-devel/gcc:            4.9.4::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
Comment 14 Peter Fox 2016-12-26 01:06:13 UTC
My patch breaks memtest, so more work required. Lots of failures in test 8, at least.
Comment 15 Peter Fox 2016-12-26 20:23:18 UTC
Created attachment 457450 [details, diff]
improved patch to remove ebx from asm blocks in test.c

Fixes problem with previous patch where test 9 (random data) would fail, This was caused by edx getting trashed by rand(), so save key values on stack during the asm parts of the tests where necessary.

As the code is compiled with omit-frame-pointer I can't help but think there must be a way to tell gcc to deal with memtest's use of ebx.
Comment 16 Michael 2017-01-07 16:11:18 UTC
Hi there,

I believe the build of test.c fails, because it's being build with -fPIC which puts constraints on the assembler sections.

If you look at the Makefile in the original source, both temp.c and random.c have hardcoded flags, and not using the CFLAGS variable, but this is effectively reversed by the "memtest86+-5.01-test-random-cflags.patch" so it includes the CFLAGS (and -fPIC), which I believe is wrong.

I can make this build by removing the mentioned cflags patch.

I realize that this patch (from bug 590974) was made for building on hardened, but maybe you could try to just add the missing -fno-stack-protector to those two files instead of reversing the entire thing causing it to build with -fPIC (I'd like to think the author of memtest86+ must have hardcoded the flags for a reason).

Here's my build log on gcc-4.9.4 without the patch:

>>> Compiling source in /var/tmp/portage/sys-apps/memtest86+-5.01-r2/work/memtest86+-5.01 ...
make -j5 
x86_64-pc-linux-gnu-gcc -E -traditional head.S -o head.s
x86_64-pc-linux-gnu-gcc -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -fno-strict-aliasing reloc.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o main.o main.c
x86_64-pc-linux-gnu-gcc -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding test.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o init.o init.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o lib.o lib.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o patn.o patn.c
lib.c: In function ‘serial_echo_init’:
lib.c:807:19: warning: variable ‘lo’ set but not used [-Wunused-but-set-variable]
  int comstat, hi, lo, serial_div;
                   ^
lib.c:807:15: warning: variable ‘hi’ set but not used [-Wunused-but-set-variable]
  int comstat, hi, lo, serial_div;
               ^
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o screen_buffer.o screen_buffer.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o config.o config.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o cpuid.o cpuid.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o linuxbios.o linuxbios.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o pci.o pci.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o memsize.o memsize.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o spd.o spd.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o error.o error.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o dmi.o dmi.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o controller.o controller.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o smp.o smp.c
x86_64-pc-linux-gnu-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector  -m32  -c -o vmem.o vmem.c
x86_64-pc-linux-gnu-gcc -c -Wall -march=i486 -m32 -O3 -fomit-frame-pointer -fno-builtin -ffreestanding random.c
controller.c: In function ‘poll_timings_k16’:
controller.c:3683:20: warning: variable ‘rc’ set but not used [-Wunused-but-set-variable]
  int cas, rcd, rp, rc, ras;
                    ^
x86_64-pc-linux-gnu-gcc -E -traditional bootsect.S -o bootsect.s
x86_64-pc-linux-gnu-gcc -E -traditional setup.S -o setup.s
x86_64-pc-linux-gnu-as -32  -o head.o head.s
x86_64-pc-linux-gnu-as -32  -o bootsect.o bootsect.s
x86_64-pc-linux-gnu-as -32  -o setup.o setup.s
x86_64-pc-linux-gnu-ld --warn-constructors --warn-common -static -T memtest_shared.lds \
 -o memtest_shared head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o config.o cpuid.o linuxbios.o pci.o memsize.o spd.o error.o dmi.o controller.o smp.o vmem.o random.o && \
x86_64-pc-linux-gnu-ld -shared -Bsymbolic -T memtest_shared.lds -o memtest_shared head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o config.o cpuid.o linuxbios.o pci.o memsize.o spd.o error.o dmi.o controller.o smp.o vmem.o random.o
x86_64-pc-linux-gnu-ld: test.o: warning: relocation in readonly section `.text'.
x86_64-pc-linux-gnu-ld: warning: creating a DT_TEXTREL in object.
objcopy -O binary memtest_shared memtest_shared.bin
x86_64-pc-linux-gnu-ld -T memtest.bin.lds bootsect.o setup.o -b binary \
memtest_shared.bin -o memtest.bin
x86_64-pc-linux-gnu-ld -s -T memtest.lds -b binary memtest_shared.bin -o memtest
>>> Source compiled.

Cheers ;)
Comment 17 Michael Palimaka (kensington) gentoo-dev 2017-02-22 09:05:17 UTC
*** Bug 610104 has been marked as a duplicate of this bug. ***
Comment 18 Matt Turner gentoo-dev 2017-03-13 01:57:40 UTC
Does anyone else think hardening memtest86+ is really stupid?

Can we just disable the hardening features on memtest86+?
Comment 19 SpanKY gentoo-dev 2017-03-13 04:15:54 UTC
(In reply to Matt Turner from comment #18)

it isn't a hardening issue.  it fails w/gcc-4.9 on all systems (hardened & non-hardened).

memtest builds itself as PIC because that's how it expects to link+boot when you launch it from the bootloader.

it also builds fine w/gcc-5.4.  i imagine gcc got smarter w/32-bit & ebx & PIC, and/or in freestanding mode.
Comment 20 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2017-03-13 09:31:33 UTC
CCing hardened. The package compiles fine with gcc-5 on non-hardened systems...
Comment 21 Mike Gilbert gentoo-dev 2017-03-13 15:30:44 UTC
Has anyone running hardened GCC 5 actually experienced a failure here? If I understand vapier's comment correctly, we just need to stabilize both GCC 5 and memtest-5.01 at the same time.
Comment 22 Alexander Tsoy 2017-03-13 15:42:23 UTC
(In reply to Mike Gilbert from comment #21)
> Has anyone running hardened GCC 5 actually experienced a failure here?

No, package compiles fine with gcc-5 on my hardened systems.
Comment 23 Magnus Granberg gentoo-dev 2017-03-13 17:08:02 UTC
sys-apps/memtest86+-5.01-r2 merged.
with gcc 5.4 hardened
Comment 24 SpanKY gentoo-dev 2017-03-14 23:37:37 UTC
should be fixed by:
https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=270d1954363def0d88b42054d5991c9fde0a8071

this was caused by the fix for bug 590974 ... we wanted to pull some flags from the common settings (like turning off hardening), but we also started pulling in new flags that weren't there before (like -fPIC).