GNU bug report logs -
#20261
mount-points test failure within build environment in linux-libre-3.19.3
Previous Next
Reported by: Mark H Weaver <mhw <at> netris.org>
Date: Sun, 5 Apr 2015 06:12:01 UTC
Severity: normal
Done: ludo <at> gnu.org (Ludovic Courtès)
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 20261 in the body.
You can then email your comments to 20261 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-guix <at> gnu.org
:
bug#20261
; Package
guix
.
(Sun, 05 Apr 2015 06:12:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Mark H Weaver <mhw <at> netris.org>
:
New bug report received and forwarded. Copy sent to
bug-guix <at> gnu.org
.
(Sun, 05 Apr 2015 06:12:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Within the guix-daemon build environment, tests/syscalls.scm
consistently fails on my i686 Libreboot X60 running linux-libre-3.19.3.
Outside of the build environment the test passes.
Here's the relevant except from syscalls.log:
--8<---------------cut here---------------start------------->8---
Test begin:
test-name: "mount-points"
source-file: "tests/syscalls.scm"
source-line: 47
source-form: (test-assert "mount-points" (member "/" (mount-points)))
Test end:
result-kind: fail
actual-value: #f
--8<---------------cut here---------------end--------------->8---
I built a simple derivation to print the result of (mount-points) within
the build environment:
--8<---------------cut here---------------start------------->8---
mhw <at> jojen:~/guix$ ./pre-inst-env guile
GNU Guile 2.0.11
Copyright (C) 1995-2014 Free Software Foundation, Inc.
Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.
Enter `,help' for help.
scheme@(guile-user)> (use-modules (guix packages) (guix derivations) (guix store) (gnu packages commencement))
scheme@(guile-user)> (define store (open-connection))
scheme@(guile-user)> (build-expression->derivation
store "test"
'(begin (use-modules (guix build syscalls))
(format #t "Mount points: ~S\n" (mount-points)))
#:modules '((guix build syscalls))
#:guile-for-build (package-derivation store guile-final "i686-linux" #:graft? #f)
#:local-build? #t)
$1 = #<derivation /gnu/store/l7386hy58ffnj5pcvm621x6myml00bkj-test.drv => /gnu/store/8kya2xpgn89crq5cfrmj7952yhfhr4dv-test a2420f0>
scheme@(guile-user)> (build-derivations store (list $1))
building path(s) `/gnu/store/8kya2xpgn89crq5cfrmj7952yhfhr4dv-test'
Mount points: ("/dev/full" "/dev/kvm" "/dev/null" "/dev/random" "/dev/tty" "/dev/urandom" "/dev/zero" "/gnu/store/0ya00x8w06c1ph11lj5xwhiygy4b2lxd-gmp-6.0.0a" "/gnu/store/1d0s2rhqzrjqyb27n0b6w84knj8y51xq-libatomic-ops-7.4.2" "/gnu/store/269nlkyj5cqm7s4yfw3msc5sgj9is5qs-libunistring-0.9.5" "/gnu/store/3195f0cppgglxr91ir631f4bnvpqk9z0-bash-4.3.33" "/gnu/store/3xil4ahvng7iqvcbprp40glbvmjd843p-readline-6.3" "/gnu/store/5p57p4vznrf5j8wxpikwsdvxi4niv1dl-ncurses-5.9" "/gnu/store/7br8pxkz6jgkpjldr6hjzbxhzgsp1hx1-module-import-compiled" "/gnu/store/8lzvbsabc85pwfcszpav91flrl1lnc37-gcc-4.8.4-lib" "/gnu/store/bna6pmd8llg7g63is95rrkf8cfb8ly0q-ncurses-5.9" "/gnu/store/jzw8d98hrmjqgx9lfwmmnsgahqhcsbbr-pkg-config-0.28" "/gnu/store/lfh6q5ascp8b3545j9vr7ckbqi1al741-readline-6.3" "/gnu/store/mlmxnahghpvnj9wmhmqbi14fq408vjxx-module-import" "/gnu/store/nkv48yr5rhwdwgwv78gnap05nysq9wkn-libgc-7.4.2" "/gnu/store/vd8ij01bq08icp87bz5gs2v4bq53bls6-glibc-2.21" "/gnu/store/wd3wpzzl3z8bygkvjf4ka7486afbj0z3-libltdl-2.4.6" "/gnu/store/y2m6nf3w605k951fzmyanibzm3fd0caa-libffi-3.1" "/gnu/store/y5x64mcyzxjkjlq5la547lhd13b531mk-guile-2.0.11" "/tmp/nix-build-test.drv-0" "/proc" "/dev/shm" "/dev/pts")
builder for `/gnu/store/l7386hy58ffnj5pcvm621x6myml00bkj-test.drv' failed to produce output path `/gnu/store/8kya2xpgn89crq5cfrmj7952yhfhr4dv-test'
guix/store.scm:621:0: In procedure build-things:
guix/store.scm:621:0: Throw to key `srfi-34' with args `(#<condition &nix-protocol-error [message: "build of `/gnu/store/l7386hy58ffnj5pcvm621x6myml00bkj-test.drv' failed" status: 100] a971d50>)'.
Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
scheme@(guile-user) [1]> ,q
scheme@(guile-user)> (use-modules (guix build syscalls))
scheme@(guile-user)> (mount-points)
$2 = ("/proc" "/sys" "/" "/dev" "/home/mhw/Videos" "/dev/pts" "/dev/shm" "/sys/kernel/debug")
scheme@(guile-user)>
--8<---------------cut here---------------end--------------->8---
As you can see, "/" is listed as a mount point outside of the build
environment, but not inside.
Mark
Information forwarded
to
bug-guix <at> gnu.org
:
bug#20261
; Package
guix
.
(Sun, 05 Apr 2015 06:27:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 20261 <at> debbugs.gnu.org (full text, mbox):
retitle 20261 mount-points test failure within build environment in linux-libre-3.19.3
thanks
Mark H Weaver <mhw <at> netris.org> writes:
> Within the guix-daemon build environment, tests/syscalls.scm
> consistently fails on my i686 Libreboot X60 running linux-libre-3.19.3.
> Outside of the build environment the test passes.
>
> Here's the relevant except from syscalls.log:
>
> Test begin:
> test-name: "mount-points"
> source-file: "tests/syscalls.scm"
> source-line: 47
> source-form: (test-assert "mount-points" (member "/" (mount-points)))
> Test end:
> result-kind: fail
> actual-value: #f
>
> I built a simple derivation to print the result of (mount-points) within
> the build environment:
>
> mhw <at> jojen:~/guix$ ./pre-inst-env guile
> GNU Guile 2.0.11
> Copyright (C) 1995-2014 Free Software Foundation, Inc.
>
> Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
> This program is free software, and you are welcome to redistribute it
> under certain conditions; type `,show c' for details.
>
> Enter `,help' for help.
> scheme@(guile-user)> (use-modules (guix packages) (guix derivations) (guix store) (gnu packages commencement))
> scheme@(guile-user)> (define store (open-connection))
> scheme@(guile-user)> (build-expression->derivation
> store "test"
> '(begin (use-modules (guix build syscalls))
> (format #t "Mount points: ~S\n" (mount-points)))
> #:modules '((guix build syscalls))
> #:guile-for-build (package-derivation store guile-final "i686-linux" #:graft? #f)
> #:local-build? #t)
>
> $1 = #<derivation /gnu/store/l7386hy58ffnj5pcvm621x6myml00bkj-test.drv => /gnu/store/8kya2xpgn89crq5cfrmj7952yhfhr4dv-test a2420f0>
> scheme@(guile-user)> (build-derivations store (list $1))
> building path(s) `/gnu/store/8kya2xpgn89crq5cfrmj7952yhfhr4dv-test'
> Mount points: ("/dev/full" "/dev/kvm" "/dev/null" "/dev/random" "/dev/tty" "/dev/urandom" "/dev/zero" "/gnu/store/0ya00x8w06c1ph11lj5xwhiygy4b2lxd-gmp-6.0.0a" "/gnu/store/1d0s2rhqzrjqyb27n0b6w84knj8y51xq-libatomic-ops-7.4.2" "/gnu/store/269nlkyj5cqm7s4yfw3msc5sgj9is5qs-libunistring-0.9.5" "/gnu/store/3195f0cppgglxr91ir631f4bnvpqk9z0-bash-4.3.33" "/gnu/store/3xil4ahvng7iqvcbprp40glbvmjd843p-readline-6.3" "/gnu/store/5p57p4vznrf5j8wxpikwsdvxi4niv1dl-ncurses-5.9" "/gnu/store/7br8pxkz6jgkpjldr6hjzbxhzgsp1hx1-module-import-compiled" "/gnu/store/8lzvbsabc85pwfcszpav91flrl1lnc37-gcc-4.8.4-lib" "/gnu/store/bna6pmd8llg7g63is95rrkf8cfb8ly0q-ncurses-5.9" "/gnu/store/jzw8d98hrmjqgx9lfwmmnsgahqhcsbbr-pkg-config-0.28" "/gnu/store/lfh6q5ascp8b3545j9vr7ckbqi1al741-readline-6.3" "/gnu/store/mlmxnahghpvnj9wmhmqbi14fq408vjxx-module-import" "/gnu/store/nkv48yr5rhwdwgwv78gnap05nysq9wkn-libgc-7.4.2" "/gnu/store/vd8ij01bq08icp87bz5gs2v4bq53bls6-glibc-2.21" "/gnu/store/wd3wpzzl3z8bygkvjf4ka7486afbj0z3-libltdl-2.4.6" "/gnu/store/y2m6nf3w605k951fzmyanibzm3fd0caa-libffi-3.1" "/gnu/store/y5x64mcyzxjkjlq5la547lhd13b531mk-guile-2.0.11" "/tmp/nix-build-test.drv-0" "/proc" "/dev/shm" "/dev/pts")
> builder for `/gnu/store/l7386hy58ffnj5pcvm621x6myml00bkj-test.drv' failed to produce output path `/gnu/store/8kya2xpgn89crq5cfrmj7952yhfhr4dv-test'
> guix/store.scm:621:0: In procedure build-things:
> guix/store.scm:621:0: Throw to key `srfi-34' with args `(#<condition &nix-protocol-error [message: "build of `/gnu/store/l7386hy58ffnj5pcvm621x6myml00bkj-test.drv' failed" status: 100] a971d50>)'.
>
> Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
> scheme@(guile-user) [1]> ,q
> scheme@(guile-user)> (use-modules (guix build syscalls))
> scheme@(guile-user)> (mount-points)
> $2 = ("/proc" "/sys" "/" "/dev" "/home/mhw/Videos" "/dev/pts" "/dev/shm" "/sys/kernel/debug")
> scheme@(guile-user)>
>
> As you can see, "/" is listed as a mount point outside of the build
> environment, but not inside.
The test above was done when running linux-libre-3.19.3. I rebooted
into an older system with linux-libre-3.18.10 and performed the same
test, and this time "/" is listed among the mount points (twice even):
--8<---------------cut here---------------start------------->8---
mhw <at> jojen:~/guix$ ./pre-inst-env guile
GNU Guile 2.0.11
Copyright (C) 1995-2014 Free Software Foundation, Inc.
Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.
Enter `,help' for help.
scheme@(guile-user)> (use-modules (guix packages) (guix derivations) (guix store) (gnu packages commencement))
scheme@(guile-user)> (define store (open-connection))
scheme@(guile-user)> (build-expression->derivation
store "test"
'(begin (use-modules (guix build syscalls))
(format #t "Mount points: ~S\n" (mount-points)))
#:modules '((guix build syscalls))
#:guile-for-build (package-derivation store guile-final "i686-linux" #:graft? #f)
#:local-build? #t)
$1 = #<derivation /gnu/store/l7386hy58ffnj5pcvm621x6myml00bkj-test.drv => /gnu/store/8kya2xpgn89crq5cfrmj7952yhfhr4dv-test 9b5c410>
scheme@(guile-user)> (build-derivations store (list $1))
building path(s) `/gnu/store/8kya2xpgn89crq5cfrmj7952yhfhr4dv-test'
Mount points: ("/" "/" "/dev" "/dev/pts" "/dev/shm" "/proc" "/sys" "/sys/kernel/debug" "/home/mhw/Videos" "/dev/full" "/dev/kvm" "/dev/null" "/dev/random" "/dev/tty" "/dev/urandom" "/dev/zero" "/gnu/store/0ya00x8w06c1ph11lj5xwhiygy4b2lxd-gmp-6.0.0a" "/gnu/store/1d0s2rhqzrjqyb27n0b6w84knj8y51xq-libatomic-ops-7.4.2" "/gnu/store/269nlkyj5cqm7s4yfw3msc5sgj9is5qs-libunistring-0.9.5" "/gnu/store/3195f0cppgglxr91ir631f4bnvpqk9z0-bash-4.3.33" "/gnu/store/3xil4ahvng7iqvcbprp40glbvmjd843p-readline-6.3" "/gnu/store/5p57p4vznrf5j8wxpikwsdvxi4niv1dl-ncurses-5.9" "/gnu/store/7br8pxkz6jgkpjldr6hjzbxhzgsp1hx1-module-import-compiled" "/gnu/store/8lzvbsabc85pwfcszpav91flrl1lnc37-gcc-4.8.4-lib" "/gnu/store/bna6pmd8llg7g63is95rrkf8cfb8ly0q-ncurses-5.9" "/gnu/store/jzw8d98hrmjqgx9lfwmmnsgahqhcsbbr-pkg-config-0.28" "/gnu/store/lfh6q5ascp8b3545j9vr7ckbqi1al741-readline-6.3" "/gnu/store/mlmxnahghpvnj9wmhmqbi14fq408vjxx-module-import" "/gnu/store/nkv48yr5rhwdwgwv78gnap05nysq9wkn-libgc-7.4.2" "/gnu/store/vd8ij01bq08icp87bz5gs2v4bq53bls6-glibc-2.21" "/gnu/store/wd3wpzzl3z8bygkvjf4ka7486afbj0z3-libltdl-2.4.6" "/gnu/store/y2m6nf3w605k951fzmyanibzm3fd0caa-libffi-3.1" "/gnu/store/y5x64mcyzxjkjlq5la547lhd13b531mk-guile-2.0.11" "/tmp/nix-build-test.drv-0" "/proc" "/dev/shm" "/dev/pts")
builder for `/gnu/store/l7386hy58ffnj5pcvm621x6myml00bkj-test.drv' failed to produce output path `/gnu/store/8kya2xpgn89crq5cfrmj7952yhfhr4dv-test'
guix/store.scm:621:0: In procedure build-things:
guix/store.scm:621:0: Throw to key `srfi-34' with args `(#<condition &nix-protocol-error [message: "build of `/gnu/store/l7386hy58ffnj5pcvm621x6myml00bkj-test.drv' failed" status: 100] a28a0a8>)'.
Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
scheme@(guile-user) [1]> ,q
scheme@(guile-user)> (use-modules (guix build syscalls))
scheme@(guile-user)> (mount-points)
$2 = ("/" "/proc" "/sys" "/" "/dev" "/home/mhw/Videos" "/dev/pts" "/dev/shm" "/sys/kernel/debug")
scheme@(guile-user)>
--8<---------------cut here---------------end--------------->8---
So, clearly there has been a change (regression?) in linux-libre-3.19
that is causing this test to fail.
For now, might I suggest checking for the existence of "/proc" instead?
Mark
Changed bug title to 'mount-points test failure within build environment in linux-libre-3.19.3' from '(mount-points) returns bogus values within the build environment'
Request was from
Mark H Weaver <mhw <at> netris.org>
to
control <at> debbugs.gnu.org
.
(Sun, 05 Apr 2015 06:27:04 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-guix <at> gnu.org
:
bug#20261
; Package
guix
.
(Sun, 05 Apr 2015 22:37:01 GMT)
Full text and
rfc822 format available.
Message #13 received at 20261 <at> debbugs.gnu.org (full text, mbox):
Andy Wingo reported running into the same problem on Linux-4.0-rc6.
Mark
Reply sent
to
ludo <at> gnu.org (Ludovic Courtès)
:
You have taken responsibility.
(Mon, 06 Apr 2015 19:58:01 GMT)
Full text and
rfc822 format available.
Notification sent
to
Mark H Weaver <mhw <at> netris.org>
:
bug acknowledged by developer.
(Mon, 06 Apr 2015 19:58:02 GMT)
Full text and
rfc822 format available.
Message #18 received at 20261-done <at> debbugs.gnu.org (full text, mbox):
Fixed in 381ac93, thanks!
Ludo’.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Tue, 05 May 2015 11:24:05 GMT)
Full text and
rfc822 format available.
This bug report was last modified 8 years and 359 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.