guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Guix on aarch64


From: Mark H Weaver
Subject: Re: Guix on aarch64
Date: Thu, 23 Aug 2018 00:58:10 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)

Hi Ludovic and Efraim,

I think there may be a serious problem with substitutes on Aarch64.  See
below, where Benjamin Slade reports that substitutes aren't working for
him on Aarch64, although he reports having authorized berlin's key.

If I'm not mistaken, I believe I have confirmed with the test below that
a substitute for binutils from early commencement on aarch64 is not
available on berlin.

I ran "guix build -n -s aarch64-linux hello" on my x86_64 system, to
generate the derivations and see if the hashes matched what's in
Benjamin's transcript.  The derivation which failed below,

  /gnu/store/8bkfchbibkfflp72vvdf39hdbv362vm7-binutils-2.30.tar.xz.drv,

matches what I generated on my system.  I looked in the derivation file
to find the output path, and found this:

  /gnu/store/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz

I tried to fetch this manually from berlin.guixsd.org, and it returned
404:

--8<---------------cut here---------------start------------->8---
address@hidden ~$ wget 
https://berlin.guixsd.org/guix/nar/gzip/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz
--2018-08-23 00:26:01--  
https://berlin.guixsd.org/guix/nar/gzip/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz
Resolving berlin.guixsd.org (berlin.guixsd.org)... 141.80.181.40
Connecting to berlin.guixsd.org (berlin.guixsd.org)|141.80.181.40|:443... 
connected.
HTTP request sent, awaiting response... 404 Not Found
2018-08-23 00:26:02 ERROR 404: Not Found.

address@hidden ~$ wget 
https://berlin.guixsd.org/guix/nar/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz
--2018-08-23 00:26:27--  
https://berlin.guixsd.org/guix/nar/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz
Resolving berlin.guixsd.org (berlin.guixsd.org)... 141.80.181.40
Connecting to berlin.guixsd.org (berlin.guixsd.org)|141.80.181.40|:443... 
connected.
HTTP request sent, awaiting response... 404 Not Found
2018-08-23 00:26:27 ERROR 404: Not Found.
--8<---------------cut here---------------end--------------->8---

It occurs to me that on Hydra, I have implemented a system to ensure
that *all* derivations from a certain set of _evaluations_ (the most
recent release and the last two weeks of 'master' evaluations) are
permanently kept as GC roots, regardless of how long ago they were
built.  Among other things, this ensures that even the early
commencement derivations are kept even if they were built a long time
ago.

Berlin.guixsd.org may not have any similar mechanism in place.  It may
still be using the old policy, where old GC roots are deleted based
solely on their timestamps in the filesystem, which indicate when the GC
root symlinks were first installed, long ago during the last core
updates build-out.  This could result in the early commencement
derivations and corresponding outputs being deleted prematurely.

Since Aarch64 is the only architecture that's on berlin but not on
Hydra, it's the only architecture where this problem would arise.  For
other architectures, even if berlin deletes these old derivations, Hydra
still always has a copy because of the evaluation-based GC policy I
implemented there.

What do you think?

      Mark


Benjamin Slade <address@hidden> writes:

> Though, unfortunately, when I try `guix package -i hello` (or any other
> package), I get the following error:
>
> ````
> ............
> /gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/tar: 
> /gnu/store/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz: Wrote only 
> 4096 of 10240 bytes
> /gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/tar: 
> Child died with signal 9
> /gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/tar: 
> Error is not recoverable: exiting now
> source is under 'binutils-2.30'
> applying 
> '/gnu/store/r7imyzhcnqbyzrbxygg60iwqp1jmwgrq-binutils-loongson-workaround.patch'...
> Backtrace:
> In ice-9/boot-9.scm:
>  160: 9 [catch #t #<catch-closure 9d13c0> ...]
> In unknown file:
>    ?: 8 [apply-smob/1 #<catch-closure 9d13c0>]
> In ice-9/boot-9.scm:
>   66: 7 [call-with-prompt prompt0 ...]
> In ice-9/eval.scm:
>  432: 6 [eval # #]
> In ice-9/boot-9.scm:
> 2412: 5 [save-module-excursion #<procedure a40780 at ice-9/boot-9.scm:4084:3 
> ()>]
> 4089: 4 [#<procedure a40780 at ice-9/boot-9.scm:4084:3 ()>]
> 1734: 3 [%start-stack load-stack #<procedure a52560 at 
> ice-9/boot-9.scm:4080:10 ()>]
> 1739: 2 [#<procedure a54d20 ()>]
> In unknown file:
>    ?: 1 [primitive-load 
> "/gnu/store/976r9wpcnsi9lhsg2yr8hdzkqnilyq9n-binutils-2.30.tar.xz-builder"]
> In ./guix/build/utils.scm:
>  616: 0 [invoke 
> "/gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/tar" 
> ...]
>
> ./guix/build/utils.scm:616:6: In procedure invoke:
> ./guix/build/utils.scm:616:6: Throw to key `srfi-34' with args `(#<condition 
> &invoke-error [program: 
> "/gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/tar" 
> arguments: ("cvf" 
> "/gnu/store/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz" 
> "--use-compress-program=/gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/xz
>  --threads=0" "address@hidden" "--owner=root:0" "--group=root:0" 
> "--sort=name" "binutils-2.30") exit-status: 2 term-signal: #f stop-signal: 
> #f] d7ff00>)'.
> builder for 
> `/gnu/store/8bkfchbibkfflp72vvdf39hdbv362vm7-binutils-2.30.tar.xz.drv' failed 
> with exit code 1
> cannot build derivation 
> `/gnu/store/6mbhl1b7kdmysilwsxk59vkws2ca9ajh-binutils-2.30.drv': 1 
> dependencies couldn't be built
> cannot build derivation 
> `/gnu/store/20q3yb3yri1g7nqng06j9kwc07ypxh1g-binutils-cross-boot0-2.30.drv': 
> 1 dependencies couldn't be built
> cannot build derivation 
> `/gnu/store/sghh265k30fn0cj24rxc9p6xvn6yv3qs-perl-5.26.1.drv': 1 dependencies 
> couldn't be built
> guix package: error: build failed: build of 
> `/gnu/store/sghh265k30fn0cj24rxc9p6xvn6yv3qs-perl-5.26.1.drv' failed
> ````
>
>  —Ben



reply via email to

[Prev in Thread] Current Thread [Next in Thread]