Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 639058 - sys-apps/portage tests stall on arm64
Summary: sys-apps/portage tests stall on arm64
Status: RESOLVED TEST-REQUEST
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: ARM64 Linux
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-11-28 13:45 UTC by Roy Bamford
Modified: 2020-09-01 01:00 UTC (History)
4 users (show)

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


Attachments
Log of stalled build of sys-apps:portage-2.3.16 (sys-apps:portage-2.3.16:20171128-132554.log,254.97 KB, text/x-log)
2017-11-28 13:48 UTC, Roy Bamford
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Roy Bamford gentoo-dev 2017-11-28 13:45:01 UTC
Last screen message is testArrayFromfileEof (portage.tests.ebuild.test_array_fromfile_eof.ArrayFromfileEofTestCase) ... when emerging portage with test included in features.
Tested  sys-apps/portage-2.3.16, sys-apps/portage-2.3.13 both with python 2.7 and python 3.4
Same behaviour observed in all four test cases.


Reproducible: Always

Steps to Reproduce:
1. Add test to FEATURES
2. keyword sys-apps/portage as required. 
3. emerge =sys-apps/portage-2.3.16 or emerge =sys-apps/portage-2.3.13
Actual Results:  
Tests stall at (portage.tests.ebuild.test_array_fromfile_eof.ArrayFromfileEofTestCase) 

Expected Results:  
Portage installed after completing tests. 

# emerge --info
Portage 2.3.16 (python 3.4.6-final-0, default/linux/arm64/13.0/desktop, gcc-6.4.0, glibc-2.26-r3, 4.10.17-v8+ aarch64)
=================================================================
System uname: Linux-4.10.17-v8+-aarch64-with-gentoo-2.4.1
KiB Mem:      992560 total,     35528 free
KiB Swap:    4194300 total,   4172028 free
sh bash 4.4_p12
ld GNU gold (Gentoo 2.29.1 p3 2.29.1) 1.14
distcc 3.2rc1 aarch64-unknown-linux-gnu [enabled]
app-shells/bash:          4.4_p12::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.26.1-r1::gentoo
dev-lang/python:          2.7.14-r1::gentoo, 3.4.6-r1::gentoo
dev-util/cmake:           3.9.6::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.4.1-r2::gentoo
sys-apps/openrc:          0.34.8::gentoo
sys-apps/sandbox:         2.12::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.11.6-r2::gentoo, 1.13.4-r1::gentoo, 1.15.1-r1::gentoo
sys-devel/binutils:       2.26.1::gentoo, 2.28-r2::gentoo, 2.28.1::gentoo, 2.29.1-r1::gentoo
sys-devel/gcc:            5.4.0-r3::gentoo, 6.4.0::gentoo, 7.1.0-r1::gentoo, 7.2.0::gentoo
sys-devel/gcc-config:     1.9.0::gentoo
sys-devel/libtool:        2.4.6-r4::gentoo
sys-devel/make:           4.2.1-r1::gentoo
sys-kernel/linux-headers: 4.13::gentoo (virtual/os-headers)
sys-libs/glibc:           2.26-r3::gentoo
Repositories:

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

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

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

ACCEPT_KEYWORDS="arm64 ~arm64"
ACCEPT_LICENSE="* -@EULA FraunhoferFDK Oracle-BCLA-JavaSE google-chrome"
CBUILD="aarch64-unknown-linux-gnu"
CFLAGS="-mcpu=cortex-a53+crc -mtune=cortex-a53 -ftree-vectorize -O2 -pipe -fomit-frame-pointer"
CHOST="aarch64-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt /var/qmail/alias /var/qmail/control"
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="-mcpu=cortex-a53+crc -mtune=cortex-a53 -ftree-vectorize -O2 -pipe -fomit-frame-pointer"
DISTDIR="/var/cache/distfiles"
FCFLAGS="-O2"
FEATURES="assume-digests binpkg-logs buildpkg collision-protect config-protect-if-modified distcc distcc-pump distlocks ebuild-locks fixlafiles merge-sync multilib-strict news nodoc noinfo noman parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2"
GENTOO_MIRRORS="http://ftp.heanet.ie/pub/gentoo/                  http://mirror.mdfnet.se/gentoo                  http://mirrors.163.com/gentoo/                  http://gentoo.mirror.web4u.cz/                  http://64.50.236.52/                  http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/                  http://gentoo.mneisen.org/                  http://gentoo.mirror.pw.edu.pl/                  http://gentoo.prz.rzeszow.pl                  http://mirror.mdfnet.se/mirror/gentoo                  http://ftp.gentoo.bg/                  http://distfiles.gentoo.bg/                  http://mirrors.ludost.net/gentoo/                  http://mirror.hamakor.org.il/pub/mirrors/gentoo/                  http://ftp.dei.uc.pt/pub/linux/gentoo/"
INSTALL_MASK=" /usr/lib/systemd *.la"
LANG="en_GB.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--fix-cortex-a53-843419 -Wl,--fix-cortex-a53-835769 -Wl,--no-map-whole-files"
MAKEOPTS="-j5"
PKGDIR="/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="X a52 aac acl acpi alsa arm64 berkdb bluetooth branding bzip2 cairo cdda cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdnav dvdr egl emboss encode exif fam firefox flac fortran gdbm gif glamor gles1 gles2 gnome-keyring gpm gtk iconv icu ipv6 jpeg lcms libnotify mad minizip mng modules mp3 mp4 mpeg multilib ncurses nls nptl nss ogg opengl openmp openssl pango pcre pcre16 pdf pie png policykit postproc ppds python qt3support qt5 readline script seccomp session skia spell sqlite ssl ssp startup-notification svc svg tcpd threads tiff truetype udev udisks unicode upower usb virt-network vorbis wxwidgets x264 xattr xcb xml xv xvid xvmc zlib" 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" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_ARM="edsp neon thumb vfp vfpv3 vfpv4 vfp-d32 crc32 v4 v5 v6 v7 v8 thumb2" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev" KERNEL="linux" L10N="en en-GB" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="pdfimport presenter-console presenter-minimizer" LINGUAS="en en_GB" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-0" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="aarch64" QEMU_USER_TARGETS="aarch64" RUBY_TARGETS="ruby21 ruby22 ruby24" USERLAND="GNU" VIDEO_CARDS="fbdev vc4" 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, EMERGE_DEFAULT_OPTS, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Roy Bamford gentoo-dev 2017-11-28 13:48:32 UTC
Created attachment 506920 [details]
Log of stalled build of sys-apps:portage-2.3.16
Comment 2 Brian Dolbec (RETIRED) gentoo-dev 2017-11-28 16:41:18 UTC
I haven't updated my odroid-c2 in a while (stock odroid kernel), but I just synced, "emerge -vaD portage" (2.3.13).

Then started FEATURES=test emerge -va --jobs=1 portage

It is running, 2.7 and 3.4 tests are completed, working on 3.5, 3.6 will be next...

I am getting a lot of:

  * Unable to trace static ELF: /sbin/ldconfig: /sbin/ldconfig -p 

on many of the tests, but the tests are tagged [OK]

I'll do a full system update after and retest
Comment 3 Roy Bamford gentoo-dev 2017-11-28 17:37:52 UTC
(In reply to Brian Dolbec from comment #2)
> I haven't updated my odroid-c2 in a while (stock odroid kernel), but I just
> synced, "emerge -vaD portage" (2.3.13).
> 
> Then started FEATURES=test emerge -va --jobs=1 portage
> 
> It is running, 2.7 and 3.4 tests are completed, working on 3.5, 3.6 will be
> next...
> 
> I am getting a lot of:
> 
>   * Unable to trace static ELF: /sbin/ldconfig: /sbin/ldconfig -p 
> 
> on many of the tests, but the tests are tagged [OK]
> 
> I'll do a full system update after and retest

I've copy/pasted FEATURES=test emerge -va --jobs=1 portage and FEATURES=test emerge -va --jobs=1 =portage-2.3.13
So we are using the same commands. No change in output. 

The tests that do run, pass.
I don't see any   * Unable to trace static ELF: /sbin/ldconfig: /sbin/ldconfig -p
Comment 4 Zac Medico gentoo-dev 2017-11-28 20:02:27 UTC
Please use pstree or `ps axf` to identify the pid of the hung process, and check if it's using cpu time. Also, output of `strace -p <pid>` would be interesting.
Comment 5 Roy Bamford gentoo-dev 2017-11-28 22:43:22 UTC
(In reply to Zac Medico from comment #4)
> Please use pstree or `ps axf` to identify the pid of the hung process, and
> check if it's using cpu time. Also, output of `strace -p <pid>` would be
> interesting.

 2274 ?        Ss     0:00 /usr/sbin/sshd
 2345 ?        Ss     0:00  \_ sshd: root@pts/0
 2347 pts/0    Ss     0:00  |   \_ -bash
 2351 pts/0    S+     0:00  |       \_ screen
 2352 ?        Ss     0:00  |           \_ SCREEN
 2353 pts/1    Ss     0:00  |               \_ -/bin/bash
 2357 pts/1    SN+    0:43  |                   \_ /usr/bin/python3.4 -b /usr/lib/python-exec/python3.4/emerge -1 portage -av
 3115 pts/1    SN+    0:00  |                       \_ [sys-apps/portage-2.3.16] sandbox /var/tmp/portage/._portage_reinstall_.oi9l1vub/bin/ebuild.sh test
 3116 pts/1    SN+    0:00  |                           \_ /bin/bash /var/tmp/portage/._portage_reinstall_.oi9l1vub/bin/ebuild.sh test
 3133 pts/1    SN+    0:00  |                               \_ /bin/bash /var/tmp/portage/._portage_reinstall_.oi9l1vub/bin/ebuild.sh test
 3174 pts/1    SN+    0:00  |                                   \_ tee -a /var/tmp/portage/sys-apps/portage-2.3.16/temp/build-python2_7.log
 3205 pts/1    SN+    0:00  |                                   \_ /usr/bin/python2.7 setup.py test
 3208 pts/1    RN+    3:22  |                                       \_ /usr/bin/python2.7 -bWd /var/tmp/portage/sys-apps/portage-2.3.16/work/portage-2.3.16-python2_7/lib/portage/tests/runTests.py


The hung process is  /usr/bin/python2.7 -bWd /var/tmp/portage/sys-apps/portage-2.3.16/work/portage-2.3.16-python2_7/lib/portage/tests/runTests.py 
Its using 100% of one core.

Pi3_64 ~ # strace -p 3208
strace: Process 3208 attached

That's all it says.
Comment 6 Zac Medico gentoo-dev 2017-11-29 00:09:09 UTC
It seems like array_fromfile is not working correctly. Maybe we should simply remove this test, since array_fromfile has never really been reliable and portage doesn't use it anymore.
Comment 7 Roy Bamford gentoo-dev 2017-11-29 15:10:52 UTC
I've tested on arm64 where testArrayFromfileEof fails.
Its reported to work on arm (32 bit)
I've tested on amd64 too, just to compare results, that works.

This all started out to add ~arm64 KEYWORDS to dev-python/pyblake2-1.1.0 and sys-apps/portage-2.3.16.

They both work on arm64, so you may want to add the keywords anyway.
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-09-01 00:25:58 UTC
Seems fixed now?
Comment 9 Zac Medico gentoo-dev 2020-09-01 00:38:08 UTC
(In reply to Zac Medico from comment #6)
> It seems like array_fromfile is not working correctly. Maybe we should
> simply remove this test, since array_fromfile has never really been reliable
> and portage doesn't use it anymore.

I'll be happy to remove the test if it's still an issue.
Comment 10 Zac Medico gentoo-dev 2020-09-01 01:00:41 UTC
Also, it's possible that the hang only affected python2.7, and we don't support that anymore anyway.