Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 860819 - sys-devel/gcc: building tests (tst-vfprintf-width-prec-mem, tst-printf-bz18872) for sys-libs/glibc hang on HPPA when building with -ggdb3
Summary: sys-devel/gcc: building tests (tst-vfprintf-width-prec-mem, tst-printf-bz1887...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: HPPA Linux
: Normal normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-07-25 00:55 UTC by Sam James
Modified: 2022-07-25 02:40 UTC (History)
0 users

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


Attachments
ps faux (file_860819.txt,17.78 KB, text/plain)
2022-07-25 00:55 UTC, Sam James
Details
tst-printf-bz18872.c (file_860819.txt,161.35 KB, text/plain)
2022-07-25 01:01 UTC, Sam James
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-07-25 00:55:53 UTC
Created attachment 794123 [details]
ps faux

Noticed when building glibc-9999 (just before glibc-2.36) (at commit https://sourceware.org/git/?p=glibc.git;a=commit;h=ca4d3ea5130d66e66c5af14e958e99341bf20689), but I think I hit this when trying to test build just before glibc-2.35 was cut.

FEATURES=test ebuild glibc-9999.ebuild clean test hangs with:
```
PASS: tst-setcontext3 an exit() and created /var/tmp/portage/sys-libs/glibc-9999/work/build-hppa-hppa2.0-unknown-linux-gnu-nptl/stdlib/tst-setcontext3.EbM3U11tF4
../scripts/merge-test-results.sh -s /var/tmp/portage/sys-libs/glibc-9999/work/build-hppa-hppa2.0-unknown-linux-gnu-nptl/stdlib/ stdlib \
  bug-fmtmsg1 bug-getcontext bug-strtod bug-strtod2 check-installed-headers-c check-installed-headers-cxx check-obsolete-constructs check-wrapper-headers isomac test-a64l test-as-const-ucontext_i test-at_quick_exit-race test-atexit-race test-bz22786 test-canon test-canon2 test-cxa_atexit-race test-cxa_atexit-race2 test-dlclose-exit-race test-on_exit-race testdiv testmb testmb2 testrand testsort tst-arc4random-chacha20 tst-arc4random-fork tst-arc4random-stats tst-arc4random-thread tst-at_quick_exit tst-atexit tst-atof1 tst-atof2 tst-bsearch tst-bz20544 tst-canon-bz26341 tst-cxa_atexit tst-environ tst-fmtmsg tst-getrandom tst-limits tst-makecontext tst-makecontext-align tst-makecontext2 tst-makecontext3 tst-on_exit tst-putenv tst-qsort tst-qsort2 tst-quick_exit tst-rand48 tst-rand48-2 tst-random tst-random2 tst-realpath tst-realpath-toolong tst-secure-getenv tst-setcontext tst-setcontext2 tst-setcontext3 tst-setcontext4 tst-setcontext5 tst-setcontext6 tst-setcontext7 tst-setcontext8 tst-setcontext9 tst-strfmon_l tst-strfrom tst-strfrom-locale tst-strtod tst-strtod-nan-locale tst-strtod-nan-sign tst-strtod-overflow tst-strtod-round tst-strtod-underflow tst-strtod1i tst-strtod2 tst-strtod3 tst-strtod4 tst-strtod5 tst-strtod5i tst-strtod6 tst-strtol tst-strtol-locale tst-strtoll tst-swapcontext1 tst-system tst-thread-quick_exit tst-tininess tst-tls-atexit tst-tls-atexit-nodelete tst-unsetenv1 tst-width tst-width-stdint tst-xpg-basename \
  > /var/tmp/portage/sys-libs/glibc-9999/work/build-hppa-hppa2.0-unknown-linux-gnu-nptl/stdlib/subdir-tests.sum
make[2]: Leaving directory '/var/tmp/portage/sys-libs/glibc-9999/work/glibc-9999/stdlib'
make  subdir=stdio-common -C stdio-common ..=../ tests
make[2]: Entering directory '/var/tmp/portage/sys-libs/glibc-9999/work/glibc-9999/stdio-common'
hppa2.0-unknown-linux-gnu-gcc  -pipe -march=2.0 -fdiagnostics-show-option -ggdb3 -O2 -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu /var/tmp/portage/sys-libs/glibc-9999/work/build-hppa-hppa2.0-unknown-linux-gnu-nptl/stdio-common/tst-printf-bz18872.c -c -std=gnu11 -fgnu89-inline  -pipe -march=2.0 -fdiagnostics-show-option -ggdb3 -O2 -Wall -Wwrite-strings -Wundef -fmerge-all-constants -frounding-math -fno-stack-protector -fno-common -Wstrict-prototypes -Wold-style-definition -fmath-errno    -fno-pie      -U_FORTIFY_SOURCE   -I../include -I/var/tmp/portage/sys-libs/glibc-9999/work/build-hppa-hppa2.0-unknown-linux-gnu-nptl/stdio-common  -I/var/tmp/portage/sys-libs/glibc-9999/work/build-hppa-hppa2.0-unknown-linux-gnu-nptl  -I../sysdeps/unix/sysv/linux/hppa  -I../sysdeps/hppa/nptl  -I../sysdeps/unix/sysv/linux/include -I../sysdeps/unix/sysv/linux  -I../sysdeps/nptl  -I../sysdeps/pthread  -I../sysdeps/gnu  -I../sysdeps/unix/inet  -I../sysdeps/unix/sysv  -I../sysdeps/unix  -I../sysdeps/posix  -I../sysdeps/hppa/hppa1.1  -I../sysdeps/wordsize-32  -I../sysdeps/ieee754/flt-32  -I../sysdeps/ieee754/dbl-64  -I../sysdeps/hppa/fpu  -I../sysdeps/hppa  -I../sysdeps/ieee754  -I../sysdeps/generic  -I.. -I../libio -I. -nostdinc -isystem /usr/lib/gcc/hppa2.0-unknown-linux-gnu/11.3.0/include -isystem /usr/lib/gcc/hppa2.0-unknown-linux-gnu/11.3.0/include-fixed -isystem /usr/include -D_LIBC_REENTRANT -include /var/tmp/portage/sys-libs/glibc-9999/work/build-hppa-hppa2.0-unknown-linux-gnu-nptl/libc-modules.h -DMODULE_NAME=testsuite -include ../include/libc-symbols.h  -DPIC     -DTOP_NAMESPACE=glibc -D_IO_MTSAFE_IO -o /var/tmp/portage/sys-libs/glibc-9999/work/build-hppa-hppa2.0-unknown-linux-gnu-nptl/stdio-common/tst-printf-bz18872.o -MD -MP -MF /var/tmp/portage/sys-libs/glibc-9999/work/build-hppa-hppa2.0-unknown-linux-gnu-nptl/stdio-common/tst-printf-bz18872.o.dt -MT /var/tmp/portage/sys-libs/glibc-9999/work/build-hppa-hppa2.0-unknown-linux-gnu-nptl/stdio-common/tst-printf-bz18872.o
```

I've attached `ps faux` output from outside the chroot.

----
# emerge --info
Portage 3.0.30 (python 3.9.13-final-0, default/linux/hppa/17.0, gcc-11.3.0, glibc-9999, 5.19.0-rc4 parisc)
=================================================================
System uname: Linux-5.19.0-rc4-parisc-PA8900_-Shortfin-with-glibc2.35
KiB Mem:     8206008 total,    837752 free
KiB Swap:    4194300 total,   4183444 free
Timestamp of repository gentoo: Sun, 24 Jul 2022 18:52:13 +0000
sh dash 0.5.11.5
ld GNU ld (Gentoo 2.38 p4) 2.38
app-misc/pax-utils:        1.3.4::gentoo
app-shells/bash:           5.1_p16::gentoo
dev-lang/perl:             5.36.0::gentoo
dev-lang/python:           3.9.13::gentoo, 3.10.5::gentoo, 3.11.0_beta3::gentoo
dev-util/meson:            0.62.2::gentoo
sys-apps/baselayout:       2.8::gentoo
sys-apps/openrc:           0.45::gentoo
sys-apps/sandbox:          2.29::gentoo
sys-devel/autoconf:        2.71-r1::gentoo
sys-devel/automake:        1.16.5::gentoo
sys-devel/binutils:        2.38-r2::gentoo
sys-devel/binutils-config: 5.4.1::gentoo
sys-devel/gcc:             11.3.0::gentoo
sys-devel/gcc-config:      2.5-r1::gentoo
sys-devel/libtool:         2.4.7::gentoo
sys-devel/make:            4.3::gentoo
sys-kernel/linux-headers:  5.18-r1::gentoo (virtual/os-headers)
sys-libs/glibc:            9999::gentoo
Repositories:

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

ACCEPT_KEYWORDS="hppa ~hppa"
ACCEPT_LICENSE="*"
CBUILD="hppa2.0-unknown-linux-gnu"
CFLAGS="-O2 -pipe -march=2.0 -fdiagnostics-show-option -frecord-gcc-switches"
CHOST="hppa2.0-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
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 -pipe -march=2.0"
DISTDIR="/bound/distfiles"
EMERGE_DEFAULT_OPTS="--keep-going=y --complete-graph --with-bdeps=y --usepkg=y"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe -march=2.0"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe -march=2.0"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="C.UTF8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
MAKEOPTS="-j5 -l5"
PKGDIR="/var/cache/binpkgs"
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"
SHELL="/bin/bash"
USE="acl big-endian bzip2 cli crypt fortran gdbm hppa iconv ipv6 libglvnd ncurses nls nptl openmp pam pcre readline seccomp split-usr ssl unicode verify-sig xattr zlib" ADA_TARGET="gnat_2020" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-4 php8-0" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_10" PYTHON_TARGETS="python3_10" RUBY_TARGETS="ruby27" USERLAND="GNU" VIDEO_CARDS="fbdev dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LEX, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-07-25 01:01:35 UTC
Created attachment 794126 [details]
tst-printf-bz18872.c

I can reproduce on native HPPA using attached tst-printf-bz18872.c, but not with cross.

e.g. on muta:
```
hppa2.0-unknown-linux-gnu-gcc -pipe -march=2.0 -g -O2 -Wl,-O1 -Wl,--as-needed foo.c -v
Using built-in specs.
COLLECT_GCC=hppa2.0-unknown-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/hppa2.0-unknown-linux-gnu/11.2.1/lto-wrapper
Target: hppa2.0-unknown-linux-gnu
Configured with: /var/tmp/portage/sys-devel/gcc-11.2.1_p20220115/work/gcc-11-20220115/configure --host=hppa2.0-unknown-linux-gnu --build=hppa2.0-unknown-linux-gnu --prefix=/usr --bindir=/usr/hppa2.0-unknown-linux-gnu/gcc-bin/11.2.1 --includedir=/usr/lib/gcc/hppa2.0-unknown-linux-gnu/11.2.1/include --datadir=/usr/share/gcc-data/hppa2.0-unknown-linux-gnu/11.2.1 --mandir=/usr/share/gcc-data/hppa2.0-unknown-linux-gnu/11.2.1/man --infodir=/usr/share/gcc-data/hppa2.0-unknown-linux-gnu/11.2.1/info --with-gxx-include-dir=/usr/lib/gcc/hppa2.0-unknown-linux-gnu/11.2.1/include/g++-v11 --with-python-dir=/share/gcc-data/hppa2.0-unknown-linux-gnu/11.2.1/python --enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --disable-libunwind-exceptions --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 11.2.1_p20220115 p4' --disable-esp --enable-libstdcxx-time --disable-libstdcxx-pch --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --disable-multilib --disable-fixed-point --enable-libgomp --disable-libssp --disable-libada --disable-cet --disable-systemtap --disable-valgrind-annotations --disable-vtable-verify --disable-libvtv --without-zstd --enable-lto --without-isl --disable-libsanitizer --enable-default-pie --disable-default-ssp
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 11.2.1 20220115 (Gentoo 11.2.1_p20220115 p4)
COLLECT_GCC_OPTIONS='-pipe' '-march=2.0' '-g' '-O2' '-v' '-dumpdir' 'a-'
 /usr/libexec/gcc/hppa2.0-unknown-linux-gnu/11.2.1/cc1 -quiet -v foo.c -quiet -dumpdir a- -dumpbase foo.c -dumpbase-ext .c -march=2.0 -g -O2 -version -o - |
 /usr/lib/gcc/hppa2.0-unknown-linux-gnu/11.2.1/../../../../hppa2.0-unknown-linux-gnu/bin/as -v -o /tmp/cc55yIsl.o
GNU assembler version 2.37 (hppa2.0-unknown-linux-gnu) using BFD version (Gentoo 2.37_p1 p2) 2.37
GNU C17 (Gentoo 11.2.1_p20220115 p4) version 11.2.1 20220115 (hppa2.0-unknown-linux-gnu)
        compiled by GNU C version 11.2.1 20220115, GMP version 6.2.1, MPFR version 4.1.0-p13, MPC version 1.2.1, isl version none
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/11.2.1/../../../../hppa2.0-unknown-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/lib/gcc/hppa2.0-unknown-linux-gnu/11.2.1/include
 /usr/lib/gcc/hppa2.0-unknown-linux-gnu/11.2.1/include-fixed
 /usr/include
End of search list.
GNU C17 (Gentoo 11.2.1_p20220115 p4) version 11.2.1 20220115 (hppa2.0-unknown-linux-gnu)
        compiled by GNU C version 11.2.1 20220115, GMP version 6.2.1, MPFR version 4.1.0-p13, MPC version 1.2.1, isl version none
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 3ab426cd01445a24f61f58c0075b5617
```

Output stops there.

Partial `ps fx -g 22567` output (excluded random bash bits):
```
22453 pts/5    Ss     0:00  \_ -/bin/bash
22567 pts/5    S+     0:00  |   \_ hppa2.0-unknown-linux-gnu-gcc -pipe -march=2.0 -g -O2 -Wl,-O1 -Wl,--as-needed foo.c -v
22568 pts/5    R+    11:04  |       \_ /usr/libexec/gcc/hppa2.0-unknown-linux-gnu/11.2.1/cc1 -quiet -v foo.c -quiet -dumpdir a- -dumpbase foo.c -dumpbase-ext .c -march=2.0 -g -O2 -version -o -
22569 pts/5    S+     0:00  |       \_ /usr/lib/gcc/hppa2.0-unknown-linux-gnu/11.2.1/../../../../hppa2.0-unknown-linux-gnu/bin/as -v -o /tmp/cc55yIsl.o
```
Comment 2 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-07-25 01:02:52 UTC
(In reply to Sam James from comment #1)
> Created attachment 794126 [details]
> tst-printf-bz18872.c
> 
> I can reproduce on native HPPA using attached tst-printf-bz18872.c, but not
> with cross.
> 
> 
> Partial `ps fx -g 22567` output (excluded random bash bits):
> ```
> 22453 pts/5    Ss     0:00  \_ -/bin/bash
> 22567 pts/5    S+     0:00  |   \_ hppa2.0-unknown-linux-gnu-gcc -pipe
> -march=2.0 -g -O2 -Wl,-O1 -Wl,--as-needed foo.c -v
> 22568 pts/5    R+    11:04  |       \_
> /usr/libexec/gcc/hppa2.0-unknown-linux-gnu/11.2.1/cc1 -quiet -v foo.c -quiet
> -dumpdir a- -dumpbase foo.c -dumpbase-ext .c -march=2.0 -g -O2 -version -o -
> 22569 pts/5    S+     0:00  |       \_
> /usr/lib/gcc/hppa2.0-unknown-linux-gnu/11.2.1/../../../../hppa2.0-unknown-
> linux-gnu/bin/as -v -o /tmp/cc55yIsl.o
> ```

stracing the gcc parent, cc1, or gas is all dull:
```
sam@muta ~ $ strace -p 22567
strace: Process 22567 attached
wait4(22568, ^Cstrace: Process 22567 detached
 <detached ...>

sam@muta ~ $ strace -p 22568
strace: Process 22568 attached
^Cstrace: Process 22568 detached

sam@muta ~ $ strace -p 22569
strace: Process 22569 attached
read(0,
```
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-07-25 02:40:22 UTC
Oh, duh, it's not as. It's GCC. It just spawns an `as` (which waits a looong time for input) if using -pipe.