Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 591894 - mail-client/thunderbird-45.2.0 - illegal instruction in mozilla/intl/icu/source/common/uinvchar.c:245
Summary: mail-client/thunderbird-45.2.0 - illegal instruction in mozilla/intl/icu/sour...
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Mozilla Gentoo Team
URL:
Whiteboard:
Keywords:
: 591896 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-08-23 06:27 UTC by LW
Modified: 2017-08-26 17:56 UTC (History)
1 user (show)

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


Attachments
complete build log, bzip2 compressed (build.log.bz2,41.89 KB, application/octet-stream)
2016-08-23 08:06 UTC, LW
Details
Fail log with gcc 5.4.0, tbird use flags: jemalloc3 -system-icu (tbird-gcc-5.4.0.log.gz,53.66 KB, application/octet-stream)
2016-09-05 16:20 UTC, LW
Details
Fail log with gcc 5.4.0, tbird use flags: jemalloc3 system-icu (tbird-gcc-5.4.0-system-icu.log.gz,48.77 KB, application/octet-stream)
2016-09-05 16:35 UTC, LW
Details
Fail log with gcc 5.4.0, tbird use flags: -jemalloc3 system-icu (tbird-gcc-5.4.0-system-icu-no-jemalloc.log.gz,187.37 KB, application/octet-stream)
2016-09-05 16:46 UTC, LW
Details

Note You need to log in before you can comment on or make changes to this bug.
Description LW 2016-08-23 06:27:36 UTC
AMD Athlon(tm) II X3 455 Processor in chroot
emerge =mail-client/thunderbird-45.2.0 consistently gets an illegal instruction

command that fails from the build log:
LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH  ../bin/gencnval -d ./out/build/icudt56l /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/data/mappings/convrtrs.txt

strace before SIGILL exception:
open("/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/data/mappings/convrtrs.txt", O_RDONLY) = 3
--- SIGILL {si_signo=SIGILL, si_code=ILL_ILLOPN, si_addr=0x7f4282eaf940} ---

gdb exception info:
Program received signal SIGILL, Illegal instruction.
0x0000555555558940 in uprv_isInvariantString_56 (s=<optimized out>, length=2)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/common/uinvchar.c:245
245             if(!UCHAR_IS_INVARIANT(c)) {


Reproducible: Always

Steps to Reproduce:
1. Setup gentoo building chroot (copying /var/lib/portage/world)
2. emerge --emptytree --keep-going @world (fails for thunderbird)
3. emerge emerge =mail-client/thunderbird-45.2.0 -- fails every time therafter
Actual Results:  
make[7]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/intl/icu/target/data'
LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH  ../bin/icupkg -tl /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0
LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH  ../bin/gencnval -d 
./out/build/icudt56l 
/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/data/mappings/convrtrs.txt
Makefile:523: recipe for target 'out/build/icudt56l/cnvalias.icu' failed
make[6]: *** [out/build/icudt56l/cnvalias.icu] Illegal instruction
make[6]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/intl/icu/target/data'
Makefile:147: recipe for target 'all-recursive' failed
make[5]: *** [all-recursive] Error 2
make[5]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/intl/icu/target'
Makefile:59: recipe for target 'buildicu' failed
make[4]: *** [buildicu] Error 2
make[4]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/config/external/icu'
/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/config/recurse.mk:71: recipe for target 'config/externa
make[3]: *** [config/external/icu/target] Error 2
make[3]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird'
/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/config/recurse.mk:32: recipe for target 'compile' faile
make[2]: *** [compile] Error 2
make[2]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird'
/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/config/rules.mk:547: recipe for target 'default' failed
make[1]: *** [default] Error 2
make[1]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird'
/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/client.mk:404: recipe for target 'build' failed
make: *** [build] Error 2
 ^[[31;01m*^[[0m ERROR: mail-client/thunderbird-45.2.0::gentoo failed (compile phase):
 ^[[31;01m*^[[0m   emake failed

Expected Results:  
emerge succeeds with usual messages

Out of 1100+ packages rebuilt only thunderbird and chromium fail to emerge.
Both consistently fail due to SIGILL (www-client/chromium-53.0.2785.34).

www-client/firefox-48.0 has been rebuilt successfully 3 times, gcc-4.9.3 3 times,
binutils 3 times, glibc 3 times.

So I am thinking it is unlikely to be a hardware problem since the failure
is consistent.
Comment 1 LW 2016-08-23 06:30:50 UTC
# emerge --info
Portage 2.2.28 (python 3.4.3-final-0, hardened/linux/amd64/no-multilib, gcc-4.8.5, glibc-2.22-r4, 3.17.7-gentoo x86_64)
=================================================================
System uname: Linux-3.17.7-gentoo-x86_64-AMD_Opteron-tm-_Processor_4130-with-gentoo-2.2
KiB Mem:    16433324 total,    367068 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Mon, 15 Aug 2016 12:45:01 +0000
sh bash 4.3_p42-r1
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
app-shells/bash:          4.3_p42-r1::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.10-r1::gentoo, 3.3.5-r1::gentoo, 3.4.3-r1::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.19.1::gentoo
sys-apps/sandbox:         2.10-r1::gentoo
sys-devel/autoconf:       2.69::gentoo
sys-devel/automake:       1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25.1-r1::gentoo
sys-devel/gcc:            4.8.5::gentoo, 4.9.3::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.16::gentoo (virtual/os-headers)
sys-libs/glibc:           2.22-r4::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://172.16.10.20:8873/gentoo-portage
    priority: -1000

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

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=amdfam10 -pipe -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=amdfam10 -pipe -fomit-frame-pointer"
DISTDIR="/usr/distfiles"
EMERGE_DEFAULT_OPTS="--autounmask=n --binpkg-respect-use y --usepkgonly y"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles force-mirror 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://172.16.10.20:8081/"
LANG="en_US"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j2"
PKGDIR="/usr/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 acl amd64 bzip2 caps cli cracklib crypt cxx dri hardened iconv ipv4 justify mmx mmxext modules ncurses nls nptl nptlonly openmp pam pax_kernel pcre pie popcnt readline seccomp session sse sse2 sse3 sse4a ssl ssp tcpd unicode urandom xattr xtpax 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="cgi proxy proxy_http authn_core authz_core unixd socache_shmcb negotiation actions alias vhost_alias authz_host auth_basic authn_file authz_user deflate dir env expires filter headers include ident imagemap info log_config logio mime rewrite setenvif status version" APACHE2_MPMS="prefork" 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="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="keyboard mouse evdev" KERNEL="linux" L10N="en en-US" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_US" NGINX_MODULES_HTTP="access browser charset empty_gif fastcgi geo gzip limit_req limit_zone map proxy referer rewrite scgi split_clients upstream_ip_hash" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa 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:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2016-08-23 07:32:15 UTC
*** Bug 591896 has been marked as a duplicate of this bug. ***
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2016-08-23 07:33:45 UTC
Please attach the entire build log to this bug report.
Comment 4 LW 2016-08-23 07:56:28 UTC
fail point is the same each time

(gdb) bt
#0  0x0000555555558940 in uprv_isInvariantString_56 (s=<optimized out>, length=2)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/common/uinvchar.c:245
#1  0x0000555555556b8d in allocString (block=0x55555575d160 <tagBlock>, s=<optimized out>, length=<optimized out>)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/tools/gencnval/gencnval.c:1108
#2  0x0000555555556d20 in getTagNumber (tag=0x555555559bd9 "ALL", tagLen=3)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/tools/gencnval/gencnval.c:557
#3  0x00005555555574c1 in parseFile (in=0x555555bb2010)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/tools/gencnval/gencnval.c:341
#4  0x0000555555556058 in main (argc=<optimized out>, argv=<optimized out>)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/tools/gencnval/gencnval.c:296

(gdb) print
$2 = 65 'A'

(gdb) p c
$1 = 65 'A'

(gdb) whatis c
type = uint8_t

(gdb) info registers
rax            0x41     65
rbx            0x6      6
rcx            0x0      0
rdx            0x3      3
rsi            0x2      2
rdi            0x555555b8d003   93824998756355
rbp            0x7ffffffed2a0   0x7ffffffed2a0
rsp            0x7ffffffed290   0x7ffffffed290
r8             0x555555b8d000   93824998756352
r9             0x555555b8d002   93824998756354
r10            0x0      0
r11            0x7ffffffec388   140737488274312
r12            0x55555575d160   93824994365792
r13            0x3      3
r14            0x555555559bd9   93824992254937
r15            0x555555b8d000   93824998756352
rip            0x555555558940   0x555555558940 <uprv_isInvariantString_56+69>
eflags         0x10206  [ PF IF RF ]
cs             0x33     51
ss             0x2b     43
ds             0x0      0
es             0x0      0
fs             0x0      0
gs             0x0      0

(gdb) disassemble
Dump of assembler code for function uprv_isInvariantString_56:
   0x00005555555588fb <+0>:     push   %rbp
   0x00005555555588fc <+1>:     mov    %rsp,%rbp
   0x00005555555588ff <+4>:     sub    $0x1030,%rsp
   0x0000555555558906 <+11>:    orq    $0x0,(%rsp)
   0x000055555555890b <+16>:    add    $0x1020,%rsp
   0x0000555555558912 <+23>:    mov    %fs:0x28,%rax
   0x000055555555891b <+32>:    mov    %rax,-0x8(%rbp)
   0x000055555555891f <+36>:    xor    %eax,%eax
   0x0000555555558921 <+38>:    inc    %rdi
   0x0000555555558924 <+41>:    test   %esi,%esi
   0x0000555555558926 <+43>:    jns    0x555555558931 <uprv_isInvariantString_56+54>
   0x0000555555558928 <+45>:    mov    -0x1(%rdi),%al
   0x000055555555892b <+48>:    test   %al,%al
   0x000055555555892d <+50>:    jne    0x55555555893c <uprv_isInvariantString_56+65>
   0x000055555555892f <+52>:    jmp    0x55555555895d <uprv_isInvariantString_56+98>
   0x0000555555558931 <+54>:    je     0x55555555895d <uprv_isInvariantString_56+98>
   0x0000555555558933 <+56>:    mov    -0x1(%rdi),%al
   0x0000555555558936 <+59>:    dec    %esi
   0x0000555555558938 <+61>:    test   %al,%al
   0x000055555555893a <+63>:    je     0x555555558921 <uprv_isInvariantString_56+38>
   0x000055555555893c <+65>:    test   %al,%al
   0x000055555555893e <+67>:    js     0x555555558961 <uprv_isInvariantString_56+102>
=> 0x0000555555558940 <+69>:    bextr  $0x305,%rax,%rcx
   0x0000555555558949 <+78>:    lea    0x2510(%rip),%rdx        # 0x55555555ae60 <invariantChars>
   0x0000555555558950 <+85>:    and    $0x1f,%eax
   0x0000555555558953 <+88>:    mov    (%rdx,%rcx,4),%edx
   0x0000555555558956 <+91>:    bt     %eax,%edx
   0x0000555555558959 <+94>:    jb     0x555555558921 <uprv_isInvariantString_56+38>
   0x000055555555895b <+96>:    jmp    0x555555558961 <uprv_isInvariantString_56+102>
   0x000055555555895d <+98>:    mov    $0x1,%al
   0x000055555555895f <+100>:   jmp    0x555555558963 <uprv_isInvariantString_56+104>
   0x0000555555558961 <+102>:   xor    %eax,%eax
   0x0000555555558963 <+104>:   mov    -0x8(%rbp),%rcx
   0x0000555555558967 <+108>:   xor    %fs:0x28,%rcx
   0x0000555555558970 <+117>:   je     0x555555558977 <uprv_isInvariantString_56+124>
   0x0000555555558972 <+119>:   callq  0x555555555d20 <__stack_chk_fail@plt>
   0x0000555555558977 <+124>:   leaveq

# emerge --pretend --verbose gcc
[ebuild   R    ] sys-devel/gcc-4.9.3:4.9.3::gentoo  USE="cxx doc fortran go hardened nls nptl openmp (-altivec) (-awt) -cilk -debug (-fixed-point) -gcj -graphite (-libssp) (-multilib) -nopie -nossp -objc -objc++ -objc-gc -regression-test (-sanitize) -vanilla (-vtv)" 0 KiB 

# gcc -E -v -march=native -</dev/null 2>&1 | grep cc1
 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.9.3/cc1 -E -quiet -v - -march=amdfam10 -mmmx -m3dnow -msse -msse2 -msse3 -mno-ssse3 -msse4a -mcx16 -msahf -mno-movbe -mno-aes -mno-sha -mno-pclmul -mpopcnt -mabm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-bmi2 -mno-tbm -mno-avx -mno-avx2 -mno-sse4.2 -mno-sse4.1 -mlzcnt -mno-rtm -mno-hle -mno-rdrnd -mno-f16c -mno-fsgsbase -mno-rdseed -mprfchw -mno-adx -mfxsr -mno-xsave -mno-xsaveopt -mno-avx512f -mno-avx512er -mno-avx512cd -mno-avx512pf -mno-prefetchwt1 --param l1-cache-size=64 --param l1-cache-line-size=64 --param l2-cache-size=512 -mtune=amdfam10 -fno-strict-overflow -fPIE -fstack-protector-all -fstack-check=specific

# cat /proc/cpuinfo (for only the first core)
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 16
model           : 5
model name      : AMD Athlon(tm) II X3 455 Processor
stepping        : 3
microcode       : 0x10000c8
cpu MHz         : 3300.126
cache size      : 512 KB
physical id     : 0
siblings        : 3
core id         : 0
cpu cores       : 3
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 5
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt nodeid_msr hw_pstate npt lbrv svm_lock nrip_save vmmcall
bugs            : tlb_mmatch fxsave_leak
bogomips        : 6602.26
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate

# cpuinfo2cpuflags-x86 
CPU_FLAGS_X86: 3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a
Comment 5 LW 2016-08-23 08:06:41 UTC
Created attachment 443894 [details]
complete build log, bzip2 compressed
Comment 6 LW 2016-08-23 08:10:25 UTC
(In reply to Jeroen Roovers from comment #3)
> Please attach the entire build log to this bug report.

I was in the process of adding more info to bug #591896. It has the build log lines around the failing command. Compressed build log file attached. The other bug also has more info from running the command manually, strace and gdb backtrace.
Comment 7 LW 2016-08-23 17:11:48 UTC
Manual execution of failing command:

# cd /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/intl/icu/target/data

# make
LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH  ../bin/gencnval -d ./out/build/icudt56l /var/tmp/portaged/portage/mail-cli
Makefile:523: recipe for target 'out/build/icudt56l/cnvalias.icu' failed
make: *** [out/build/icudt56l/cnvalias.icu] Illegal instruction
    
strace for the command:
    
# LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH  strace ../bin/gencnval -d ./out/build/icudt56l /var/tmp/portaged/portage
execve("../bin/gencnval", ["../bin/gencnval", "-d", "./out/build/icudt56l", "/var/tmp/portaged/portage/mail-c"...], [/* 75 vars */]) = 0
brk(0)                                  = 0x7f3c748d7000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3c73421000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("../lib/tls/x86_64/libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
.......
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
brk(0)                                  = 0x7f3c748d7000
brk(0x7f3c748f8000)                     = 0x7f3c748f8000
open("/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/data/mappings/convrtrs.txt", O_RD) = 3
--- SIGILL {si_signo=SIGILL, si_code=ILL_ILLOPN, si_addr=0x7f3c7321e940} ---
+++ killed by SIGILL +++
Illegal instruction
Comment 8 Jory A. Pratt gentoo-dev 2016-08-28 02:03:32 UTC
(In reply to LW from comment #7)
> Manual execution of failing command:
> 
> # cd
> /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.
> 2.0/tbird/intl/icu/target/data
> 
> # make
> LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH 
> ../bin/gencnval -d ./out/build/icudt56l /var/tmp/portaged/portage/mail-cli
> Makefile:523: recipe for target 'out/build/icudt56l/cnvalias.icu' failed
> make: *** [out/build/icudt56l/cnvalias.icu] Illegal instruction
>     
> strace for the command:
>     
> # LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH 
> strace ../bin/gencnval -d ./out/build/icudt56l /var/tmp/portaged/portage
> execve("../bin/gencnval", ["../bin/gencnval", "-d", "./out/build/icudt56l",
> "/var/tmp/portaged/portage/mail-c"...], [/* 75 vars */]) = 0
> brk(0)                                  = 0x7f3c748d7000
> mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
> 0x7f3c73421000
> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or
> directory)
> open("../lib/tls/x86_64/libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT
> (No such file or directory)
> .......
> getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
> brk(0)                                  = 0x7f3c748d7000
> brk(0x7f3c748f8000)                     = 0x7f3c748f8000
> open("/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/
> thunderbird-45.2.0/mozilla/intl/icu/source/data/mappings/convrtrs.txt",
> O_RD) = 3
> --- SIGILL {si_signo=SIGILL, si_code=ILL_ILLOPN, si_addr=0x7f3c7321e940} ---
> +++ killed by SIGILL +++
> Illegal instruction

Can you test with gcc-5, 4.9.x is EOL and will not be supported much longer as far as upstream is concerned.
Comment 9 LW 2016-08-28 06:46:53 UTC
Updating to gcc 5.4.0. The C++-11 ABI change is requiring a rebuild of 204 packages. I won't be able to retry the thunderbird install with gcc 5.4.0
until Friday.
Comment 10 Ian Stakenvicius (RETIRED) gentoo-dev 2016-08-29 14:33:06 UTC
I assume you have no issues emerging the external ICU package?  If so, setting +system-icu would likely resove this issue as well.  Of course, you may actually have the same problem with that package too given it's simply bundled in mozilla.
Comment 11 LW 2016-09-02 17:12:14 UTC
emerge =dev-libs/icu-57.1 succeeds with gcc.5.4.0.
Rebuild of all packages affected by C++ abi change in progress.
Comment 12 LW 2016-09-05 16:20:42 UTC
Created attachment 445040 [details]
Fail log with gcc 5.4.0, tbird use flags: jemalloc3 -system-icu

Emerge still fails with gcc 5.4.0

# gcc-config -l
 [1] x86_64-pc-linux-gnu-4.8.4
 [2] x86_64-pc-linux-gnu-4.9.3
 [3] x86_64-pc-linux-gnu-4.9.3-hardenednopie
 [4] x86_64-pc-linux-gnu-4.9.3-hardenednopiessp
 [5] x86_64-pc-linux-gnu-4.9.3-hardenednossp
 [6] x86_64-pc-linux-gnu-4.9.3-vanilla
 [7] x86_64-pc-linux-gnu-5.4.0 *
 [8] x86_64-pc-linux-gnu-5.4.0-hardenednopie
 [9] x86_64-pc-linux-gnu-5.4.0-hardenednopiessp
 [10] x86_64-pc-linux-gnu-5.4.0-hardenednossp
 [11] x86_64-pc-linux-gnu-5.4.0-vanilla

# source /etc/profile; hash -r

# grep FLAGS /etc/portage/make.conf
CFLAGS="-O2 -pipe -march=amdfam10 -mtune=amdfam10 -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a"
USE="${CPU_FLAGS_X86} -seccomp"

# gcc -E -v -march=native -</dev/null 2>&1 | grep cc1
 /usr/libexec/gcc/x86_64-pc-linux-gnu/5.4.0/cc1 -E -quiet -v - -march=amdfam10 -mmmx -m3dnow \
-msse -msse2 -msse3 -mno-ssse3 -msse4a -mcx16 -msahf -mno-movbe -mno-aes -mno-sha -mno-pclmul \
-mpopcnt -mabm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-bmi2 -mno-tbm -mno-avx \
-mno-avx2 -mno-sse4.2 -mno-sse4.1 -mlzcnt -mno-rtm -mno-hle -mno-rdrnd -mno-f16c -mno-fsgsbase \
-mno-rdseed -mprfchw -mno-adx -mfxsr -mno-xsave -mno-xsaveopt -mno-avx512f -mno-avx512er \
-mno-avx512cd -mno-avx512pf -mno-prefetchwt1 -mno-clflushopt -mno-xsavec -mno-xsaves \
-mno-avx512dq -mno-avx512bw -mno-avx512vl -mno-avx512ifma -mno-avx512vbmi -mno-clwb -mno-pcommit \
-mno-mwaitx --param l1-cache-size=64 --param l1-cache-line-size=64 --param l2-cache-size=512 \
-mtune=amdfam10 -fno-strict-overflow -fPIE -fstack-protector-all -fstack-check=specific

# emerge --verbose thunderbird
...
[ebuild  N     ] mail-client/thunderbird-45.2.0::gentoo  USE="bindist crypt ffmpeg gstreamer hardened jemalloc3 minimal -custom-cflags -custom-o
...
make[7]: Entering directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/intl/icu/target/data'
rm -rf icupkg.inc
make[7]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/intl/icu/target/data'
LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH  ../bin/icupkg -tl /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0
LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH  ../bin/gencnval -d ./out/build/icudt56l /var/tmp/portaged/portage/mail-cli
Makefile:523: recipe for target 'out/build/icudt56l/cnvalias.icu' failed
make[6]: *** [out/build/icudt56l/cnvalias.icu] Illegal instruction
make[6]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/intl/icu/target/data'
Makefile:147: recipe for target 'all-recursive' failed
make[5]: *** [all-recursive] Error 2
make[5]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/intl/icu/target'
Makefile:59: recipe for target 'buildicu' failed
make[4]: *** [buildicu] Error 2
Comment 13 LW 2016-09-05 16:27:35 UTC
The illegal instruction appears to happen at the same place using gcc 5.4.0 as
with gcc 4.9.3:

# LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH  gdb ../bin/gencnval
(gdb) r -d ./out/build/icudt56l /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/data/ma
Starting program: /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/intl/icu/target/bin/gencnval -d ./out/b
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

Program received signal SIGILL, Illegal instruction.
0x00005555555587ed in uprv_isInvariantString_56 (s=<optimized out>, length=2)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/common/uinvchar.c:245
245             if(!UCHAR_IS_INVARIANT(c)) {

(gdb) bt
#0  0x00005555555587ed in uprv_isInvariantString_56 (s=<optimized out>, length=2)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/common/uinvchar.c:245
#1  0x0000555555556ac2 in allocString (block=0x55555575d140 <tagBlock>, s=<optimized out>, length=<optimized out>)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/tools/gencnval/gencnval.c:1108
#2  0x0000555555556c50 in getTagNumber (tag=0x555555559ad9 "ALL", tagLen=3)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/tools/gencnval/gencnval.c:557
#3  0x00005555555573eb in parseFile (in=0x55555577d180 <knownAliases>)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/tools/gencnval/gencnval.c:341
#4  0x0000555555556054 in main (argc=<optimized out>, argv=<optimized out>)
    at /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/intl/icu/source/tools/gencnval/gencnval.c:296
Comment 14 LW 2016-09-05 16:35:55 UTC
Created attachment 445042 [details]
Fail log with gcc 5.4.0, tbird use flags: jemalloc3 system-icu

Using the system icu package, the build fails with a syntax error in
jemalloc. The system icu is version 57.1, thunderbird appears to include
56.x. The portage tree has versions 55.1 and 57.1 so maybe there is an
issue verion 56?

# qlist -ICv dev-libs/icu
dev-libs/icu-57.1

# emerge --oneshot =dev-libs/icu-57.1
...
 * Final size of build directory: 291556 KiB
 * Final size of installed tree: 37056 KiB

strip: x86_64-pc-linux-gnu-strip --strip-unneeded -R .comment -R .GCC.command.line -R .note.gnu.gold-version
   usr/bin/makeconv
   usr/bin/genrb
   usr/bin/derb
   usr/bin/genbrk
   usr/bin/gencnval
   usr/bin/icuinfo
   usr/bin/pkgdata
   usr/bin/gencfu
   usr/bin/gendict
   usr/bin/uconv
   usr/lib64/libicudata.so.57.1
   usr/lib64/libicuuc.so.57.1
   usr/lib64/libicui18n.so.57.1
   usr/lib64/libicule.so.57.1
   usr/lib64/libiculx.so.57.1
   usr/lib64/libicuio.so.57.1
   usr/lib64/libicutu.so.57.1
   usr/lib64/libicutest.so.57.1
   usr/sbin/gensprep
   usr/sbin/genccode
   usr/sbin/gencmn
   usr/sbin/icupkg
   usr/sbin/gennorm2
ecompressdir: bzip2 -9 /usr/share/doc
ecompressdir: bzip2 -9 /usr/share/man
>>> Done.

>>> Installing (1 of 1) dev-libs/icu-57.1::gentoo
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.

# emerge --verbose thunderbird
...
[ebuild  N     ] mail-client/thunderbird-45.2.0::gentoo  USE="bindist crypt ffmpeg gstreamer hardened jemalloc3 minimal system-icu -custom-cflag
...
/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/memory/jemalloc/src/include/jemalloc/internal/arena.h:1
   if (likely(size <= SMALL_MAXCLASS)) {
       ^
In file included from /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/memory/jemalloc/src/src/ctl.c:2:0
src/include/jemalloc/internal/jemalloc_internal.h: In function 'je_u2rz':
src/include/jemalloc/internal/jemalloc_internal.h:978:29: error: expected expression before ')' token
  if (usize <= SMALL_MAXCLASS) {
                             ^
src/include/jemalloc/internal/jemalloc_internal.h:980:24: error: 'binind' undeclared (first use in this function)
   ret = arena_bin_info[binind].redzone_size;
                        ^
src/include/jemalloc/internal/jemalloc_internal.h:980:23: error: array subscript is not an integer
   ret = arena_bin_info[binind].redzone_size;
                       ^
src/include/jemalloc/internal/jemalloc_internal.h:980:31: error: request for member 'redzone_size' in something not a structure or union
   ret = arena_bin_info[binind].redzone_size;
                               ^
/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/config/rules.mk:916: recipe for target 'ctl.o' failed
make[4]: *** [ctl.o] Error 1
make[4]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/memory/jemalloc'
/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/config/recurse.mk:71: recipe for target 'memory/jemallo
make[3]: *** [memory/jemalloc/target] Error 2
Comment 15 LW 2016-09-05 16:46:41 UTC
Created attachment 445046 [details]
Fail log with gcc 5.4.0, tbird use flags: -jemalloc3 system-icu

Emerge fails with gcc 5.4.0, using system icu, jemalloc flag disabled.
Fails during a packaging command. Looks like ldap related files are not present.

Warning: /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/mail/installer/package-manifest:234: Missing file(s): bin/components/mozldap.xpt
Warning: /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/mail/installer/package-manifest:236: Missing file(s): bin/components/nsAbLDAPAutoCompleteSearch.js
Warning: /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/mail/installer/package-manifest:237: Missing file(s): bin/components/nsLDAPProtocolHandler.js
Warning: /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/mail/installer/package-manifest:238: Missing file(s): bin/components/ldapComponents.manifest
Warning: /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/mail/installer/package-manifest:239: Missing file(s): bin/libldap60.so
Warning: /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/mail/installer/package-manifest:240: Missing file(s): bin/libldif60.so
Warning: /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/mail/installer/package-manifest:241: Missing file(s): bin/libprldap60.so
Executing /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/dist/bin/xpcshell -g /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/dist/bin/ -a /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/dist/bin/ -f /var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/toolkit/mozapps/installer/precompile_cache.js -e precompile_startupcache("resource://gre/");
Traceback (most recent call last):
  File "/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/toolkit/mozapps/installer/packager.py", line 406, in <module>
    main()
  File "/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/toolkit/mozapps/installer/packager.py", line 400, in main
    args.source, gre_path, base)
  File "/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/toolkit/mozapps/installer/packager.py", line 161, in precompile_cache
    errors.fatal('Error while running startup cache precompilation')
  File "/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/python/mozbuild/mozpack/errors.py", line 103, in fatal
    self._handle(self.FATAL, msg)
  File "/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/python/mozbuild/mozpack/errors.py", line 98, in _handle
    raise ErrorMessage(msg)
mozpack.errors.ErrorMessage: Error: Error while running startup cache precompilation
/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/toolkit/mozapps/installer/packager.mk:41: recipe for target 'stage-package' failed
make[1]: *** [stage-package] Error 1
make[1]: Leaving directory '/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/tbird/mail/installer'
/var/tmp/portaged/portage/mail-client/thunderbird-45.2.0/work/thunderbird-45.2.0/mozilla/../mail/build.mk:19: recipe for target 'install' failed
make: *** [install] Error 2
Comment 16 LW 2016-09-05 22:15:23 UTC
Thunderbird 45.3.0 is behaving the same way as thunderbird-45.2.0 with gcc 5.4.0
and combinations of system-icu, jemalloc3.

It is weird that firefox emerges just fine with use flags -system-icu, +jemalloc3.

[ebuild   R   ~] www-client/firefox-48.0.1::gentoo  USE="bindist hardened hwaccel jemalloc3 skia startup-notification -custom-cflags -custom-optimization -dbus -debug (-gmp-autoupdate) -gtk2 -jit (-neon) -pgo -pulseaudio (-selinux) (-system-cairo) -system-harfbuzz -system-icu -system-jpeg -system-libevent -system-libvpx -system-sqlite {-test} -wifi" L10N="-ach -af -an -ar -as -ast -az -be -bg -bn-BD -bn-IN -br -bs -ca -cs -cy -da -de -el -en-GB -en-ZA -eo -es-AR -es-CL -es-ES -es-MX -et -eu -fa -fi -fr -fy -ga -gd -gl -gu -he -hi -hr -hsb -hu -hy -id -is -it -ja -kk -km -kn -ko -lt -lv -mai -mk -ml -mr -ms -nb -nl -nn -or -pa -pl -pt-BR -pt-PT -rm -ro -ru -si -sk -sl -son -sq -sr -sv -ta -te -th -tr -uk -uz -vi -xh -zh-CN -zh-TW" 0 KiB


The use flags for thunderbird are similar to those for firefox:

[ebuild  N     ] mail-client/thunderbird-45.3.0::gentoo  USE="bindist crypt ffmpeg gstreamer hardened jemalloc3 minimal -custom-cflags -custom-optimization -dbus -debug -gstreamer-0 -jit -ldap -lightning -mozdom (-neon) -pulseaudio (-selinux) -startup-notification (-system-cairo) -system-harfbuzz -system-icu -system-jpeg -system-libevent -system-libvpx -system-sqlite" L10N="-ar -ast -be -bg -bn-BD -br -ca -cs -cy -da -de -el -en-GB -es-AR -es-ES -et -eu -fi -fr -fy -ga -gd -gl -he -hr -hsb -hu -hy -id -is -it -ja -ko -lt -nb -nl -nn -pa -pl -pt-BR -pt-PT -rm -ro -ru -si -sk -sl -sq -sr -sv -ta-LK -tr -uk -vi -zh-CN -zh-TW" 0 KiB
Comment 17 Jory A. Pratt gentoo-dev 2017-08-26 17:56:05 UTC
If you feel I have closed your bug and it is still a current issue, please reopen and update it completely. We will not work bugs that have no ebuild in tree any longer or can not be reproduced with a current system.

Thank You for your support and understanding
The Mozilla Team