Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Qemu chroot with recent versions of portage
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo on ARM
View previous topic :: View next topic  
Author Message
Khumarahn
Apprentice
Apprentice


Joined: 17 Apr 2009
Posts: 199

PostPosted: Sat Jan 19, 2019 2:16 pm    Post subject: Qemu chroot with recent versions of portage Reply with quote

I have been compiling packages for aarch64 in a qemu chroot, this worked very well for quite some time. Now, after upgrade to portage-2.3.55 (from 2.3.50; no other packages upgraded), I cannot emerge anything:
Code:
emerge -av1 --debug nano
...
>>> Emerging (1 of 1) app-editors/nano-3.2::gentoo
qemu: qemu_thread_create: Invalid argument
+ __dyn_clean
+ '[' -z /var/tmp/portage/app-editors/nano-3.2 ']'
+ '[' '!' -d /var/tmp/portage/app-editors/nano-3.2 ']'
+ return 0
+ set +x
 * The ebuild phase 'die_hooks' has been aborted since PORTAGE_BUILDDIR
 * does not exist: '/var/tmp/portage/app-editors/nano-3.2'

>>> Failed to emerge app-editors/nano-3.2


I can't reproduce the problem in qemu with system emulation mode, so probably this is user mode specific.

I would like to understand more about this, but I could not find anything about this in google.


Last edited by Khumarahn on Sat Jan 19, 2019 6:15 pm; edited 1 time in total
Back to top
View user's profile Send private message
tenspd1370
Tux's lil' helper
Tux's lil' helper


Joined: 14 Dec 2017
Posts: 122

PostPosted: Sat Jan 19, 2019 3:07 pm    Post subject: Reply with quote

I came across the same problem. I don't know why it is happening, but I used the cross compiler to downgraded back and masked the new version in the target environment for now. Point is - you aren't the only one...
Back to top
View user's profile Send private message
Khumarahn
Apprentice
Apprentice


Joined: 17 Apr 2009
Posts: 199

PostPosted: Sat Jan 19, 2019 3:37 pm    Post subject: Reply with quote

I checked the currently stable portage-2.3.51-r1. This problem does not come up.

Upd: with portage-2.3.56 the problem is present.
Back to top
View user's profile Send private message
Sakaki
Guru
Guru


Joined: 21 May 2014
Posts: 409

PostPosted: Sat Jan 19, 2019 6:43 pm    Post subject: Reply with quote

Same issue here. I have had to mask >=sys-apps/portage-2.3.53 for arm64. Last version that I found that works with a QEMU chroot is 2.3.52-r1.
_________________
Regards,

sakaki
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22738

PostPosted: Sat Jan 19, 2019 9:56 pm    Post subject: Reply with quote

Can you bisect between those two revisions to find the commit that introduced the incompatibility? That might help track down what qemu-user fails to emulate correctly.
Back to top
View user's profile Send private message
Khumarahn
Apprentice
Apprentice


Joined: 17 Apr 2009
Posts: 199

PostPosted: Sat Jan 19, 2019 10:55 pm    Post subject: Reply with quote

The culprit is the pid-sandbox feature, turned on by default in commit 55a9d4ccc5ac90b454638f9205f8a5d20ca8b47a

With FEATURES="-pid-sandbox" new versions of portage work fine...
Back to top
View user's profile Send private message
steils
n00b
n00b


Joined: 20 Sep 2018
Posts: 4

PostPosted: Sat Mar 23, 2019 10:24 am    Post subject: Reply with quote

Same issue for me, and FEATURES="-pid-sandbox" worked.
Is there a bug on https://bugs.gentoo.org for this? I couldn't find it.
I would suppose that adding FEATURES="-pid-sandbox" to crossdev's default make.conf will be reasonable until it is fixed.
Back to top
View user's profile Send private message
crocket
Guru
Guru


Joined: 29 Apr 2017
Posts: 558

PostPosted: Wed Jul 10, 2019 1:40 pm    Post subject: Reply with quote

https://bugs.launchpad.net/qemu/+bug/1829459 tracks the issue.
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3924

PostPosted: Wed Jul 10, 2019 5:15 pm    Post subject: Reply with quote

Sorry but here
Code:
pid-sandbox
doesn't seems to cause any problem:
Code:
sys-apps/portage
     Available versions:  2.3.62-r2 2.3.66-r1 ~2.3.67 ~2.3.68-r1 **9999 {build doc epydoc gentoo-dev +ipc +native-extensions +rsync-verify selinux xattr KERNEL="linux" PYTHON_TARGETS="pypy python2_7 python3_5 python3_6 python3_7"}
     Installed versions:  2.3.66-r1(11:16:11 28/05/2019)(ipc native-extensions rsync-verify -build -doc -epydoc -gentoo-dev -selinux -xattr KERNEL="linux" PYTHON_TARGETS="python3_6 -pypy -python2_7 -python3_5 -python3_7")
Code:
emerge --info
Portage 2.3.66 (python 3.6.5-final-0, default/linux/arm64/17.0, gcc-9.1.0, glibc-2.29-r2, 5.2.0-gentoo-classic aarch64)
=================================================================
System uname: Linux-5.2.0-gentoo-classic-aarch64-with-gentoo-2.6 // beware as from inside a chrooted qemu-user
KiB Mem:     3937004 total,    672992 free
KiB Swap:    8048528 total,   8048004 free
Timestamp of repository gnome-next: Tue, 09 Jul 2019 06:06:50 +0000
Head commit of repository gnome-next: 866f642da26be8ddeb148d68d9ff179f59f178ad

Timestamp of repository gentoo: Wed, 10 Jul 2019 15:15:01 +0000
Head commit of repository gentoo: fa27222e4717fd840b5034b1170321265b7c2079
Timestamp of repository mv: Mon, 08 Jul 2019 07:18:21 +0000
Head commit of repository mv: c255ec6c6d5ad4cdda0117a982ac51b8e72a785e

Timestamp of repository sorrow: Thu, 04 Jul 2019 20:10:10 +0000
Head commit of repository sorrow: 4e9937d4074483595f6b94c6da5dd638ae855f6c

sh bash 4.4_p23-r1
ld GNU ld (Gentoo 2.31.1 p7) 2.31.1
distcc 3.3.2 aarch64-unknown-linux-gnu [enabled]
app-shells/bash:          4.4_p23-r1::gentoo
dev-lang/perl:            5.28.2-r1::gentoo
dev-lang/python:          2.7.15::gentoo, 3.6.5::gentoo
dev-util/cmake:           3.14.3::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6-r1::gentoo
sys-apps/openrc:          0.41.2::gentoo
sys-apps/sandbox:         2.13::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.11.6-r3::gentoo, 1.16.1-r1::gentoo
sys-devel/binutils:       2.31.1-r6::gentoo
sys-devel/gcc:            8.3.0-r1::gentoo, 9.1.0::gentoo
sys-devel/gcc-config:     2.0::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.14-r1::gentoo (virtual/os-headers)
sys-libs/glibc:           2.29-r2::gentoo
Repositories:

das-labor
    location: /var/lib/layman/das-labor
    masters: gentoo
    priority: -10001

gnome-next
    location: /var/db/repos/gnome-next
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gnome-next.git
    masters: gentoo
    priority: -10000

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

mv
    location: /var/db/repos/mv
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/mv.git
    masters: gentoo

sorrow
    location: /var/db/repos/sorrow
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/sorrow.git
    masters: gentoo

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

ACCEPT_KEYWORDS="arm64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="aarch64-unknown-linux-gnu"
CFLAGS="-march=armv8-a -mtune=cortex-a57  -O2             -pipe"
CHOST="aarch64-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /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="-march=armv8-a -mtune=cortex-a57  -O2             -pipe    "
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="   --alert y          --alphabetical          --ask-enter-invalid          --autounmask y           --autounmask-only n           --autounmask-unrestricted-atoms y           --autounmask-write y --misspell-suggestions n          --noconfmem          --nospinner            --tree          --with-bdeps y"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN 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"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distcc distcc-pump distlocks ebuild-locks fixlafiles ipc-sandbox keepwork merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirrors.evowise.com/gentoo/ http://gentoo.modulix.net/gentoo/ http://mirrors.soeasyto.com/distfiles.gentoo.org/ http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo http://mirror.netcologne.de/gentoo/ http://mirror.leaseweb.com/gentoo/ http://mirror.bytemark.co.uk/gentoo/ http://gentoo.mirror.web4u.cz/ http://mirror.dkm.cz/gentoo/ http://mirror.mdfnet.se/gentoo http://ftp.halifax.rwth-aachen.de/gentoo/ http://ftp.fi.muni.cz/pub/linux/gentoo/ http://mirrors.xservers.ro/gentoo/ http://ftp.romnet.org/gentoo/ http://ftp.rnl.tecnico.ulisboa.pt/pub/gentoo/gentoo-distfiles/"
LANG="fr_FR.utf8"
LDFLAGS="  -Wl,-O1       -Wl,-fuse-ld=bfd  -Wl,--enable-new-dtags  -march=armv8-a -mtune=cortex-a57  -O2             -pipe "
LINGUAS="fr"
MAKEOPTS="-j4 -l4"
PKGDIR="/usr/portage/packages"
PORTAGE_COMPRESS="lzma"
PORTAGE_COMPRESS_FLAGS="-9"
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="arm64 asm minimal" CPU_FLAGS_ARM="edsp neon thumb thumb2 v4 v5 v6 v7 v8 vfp vfp-d32 vfpv3 vfpv4" ELIBC="glibc" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="libinput" KERNEL="linux" L10N="fr" PHP_TARGETS="php7-2" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6" RUBY_TARGETS="ruby24" USERLAND="GNU" VIDEO_CARDS="virgl"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_RSYNC_EXTRA_OPTS
Thks 4 ur attention.
Back to top
View user's profile Send private message
gabrielg
Tux's lil' helper
Tux's lil' helper


Joined: 16 Nov 2012
Posts: 137

PostPosted: Sat May 02, 2020 11:50 am    Post subject: Reply with quote

This problem may be back - I'm trying to cross compile for a Raspberry Pi and was getting the qemu's thread error.
FEATURES="-pid-sandbox" on target filesystem seems to work.
My portage version is 2.3.89-r3 (on host and target).
Back to top
View user's profile Send private message
crocket
Guru
Guru


Joined: 29 Apr 2017
Posts: 558

PostPosted: Sat May 02, 2020 12:07 pm    Post subject: Reply with quote

To be honest, you should give up qemu. You should stick to simple local compilation. Hook up an SSD to the 4GB model of Raspberry Pi 4. Use zswap to minimize swap usage. Compile some large packages on SSD. Compile small packages on tmpfs.
Back to top
View user's profile Send private message
gabrielg
Tux's lil' helper
Tux's lil' helper


Joined: 16 Nov 2012
Posts: 137

PostPosted: Mon May 11, 2020 1:17 pm    Post subject: Reply with quote

Sadly, crocket may be correct. The workaround worked until something (ncurses I think) needed pid sandbox.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo on ARM All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum