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
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 ```
(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, ```
Oh, duh, it's not as. It's GCC. It just spawns an `as` (which waits a looong time for input) if using -pipe.
Nothing for us to do here really.