Subject: bug#19780: 13 failing tests

From: Ricardo Wurmus <[email-masked]>
Date: Mon, 2 Mar 2015 16:57:11 +0100

Ludovic Courtès writes:

> Ricardo Wurmus <[email-masked]> skribis:
>
>> 17814 execve("/localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash", ["nakn26p520psw7jawgfv74wm34dn6kxj"..., "/localhome/rwurmus-tmp/guix/test"...], [/* 11 vars */]) = 0
>
> [...]
>
>> 17814 connect(3, {sa_family=AF_LOCAL, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
>> 17814 close(3)                          = 0
>> 17814 open("/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3
>> 17814 fstat(3, {st_mode=S_IFREG|0644, st_size=1861, ...}) = 0
>> 17814 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fed42e86000
>> 17814 read(3, "#\n# /etc/nsswitch.conf\n#\n# An ex"..., 4096) = 1861
>> 17814 read(3, "", 4096)                 = 0
>> 17814 close(3)                          = 0
>> 17814 munmap(0x7fed42e86000, 4096)      = 0
>> 17814 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
>> 17814 fstat(3, {st_mode=S_IFREG|0644, st_size=33941, ...}) = 0
>> 17814 mmap(NULL, 33941, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fed42e7e000
>> 17814 close(3)                          = 0
>> 17814 open("/lib64/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3
>
> And from there we’re doomed.
>
> Could you download
> <ftp://alpha.gnu.org:/gnu/guix/bootstrap/x86_64-linux/20131110/static-binaries.tar.xz>
> and replace ‘gnu/packages/bootstrap/x86_64-linux/bash’ with the ‘bash’
> file from that tarball (make it executable), and then try again?
>
> I believe the problem is that these binaries date from before commit
> d3b59727 (Jan. 2013), which disabled dynamic NSS support in bootstrap
> binaries.

With the bash from that tarball I no longer get a segfault related to
NSS, but I still get a segfault :-/

~~~~~~~~~~~~~~~~~~~~~~
[rwurmus@guix-builder:/localhome/rwurmus-tmp/guix] (548) $ ./test-env guix build guile-bootstrap
accepted connection from pid 9363, uid 22840
substitute-binary: warning: authentication and authorization of substitutes disabled!
substitute-binary: guix substitute-binary: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable
substitute-binary: updating list of substitutes from 'file:///localhome/rwurmus-tmp/guix/test-tmp/var/9357/substituter-data'...
The following derivation will be built:
   /localhome/rwurmus-tmp/guix/test-tmp/store/mfljxqix4a8lqkfcpchrnr8yz4ijwcq0-guile-bootstrap-2.0.drv
@ build-started /localhome/rwurmus-tmp/guix/test-tmp/store/mfljxqix4a8lqkfcpchrnr8yz4ijwcq0-guile-bootstrap-2.0.drv - x86_64-linux /localhome/rwurmus-tmp/guix/test-tmp/var/log/guix/drvs/mf//ljxqix4a8lqkfcpchrnr8yz4ijwcq0-guile-bootstrap-2.0.drv.bz2
unpacking bootstrap Guile to '/localhome/rwurmus-tmp/guix/test-tmp/store/zwq7a0qpq4fljviyycn4zdryqqx2yjn1-guile-bootstrap-2.0'...
/localhome/rwurmus-tmp/guix/test-tmp/store/qa6832c56pfysmdjbw1x1fbnxjc7azj5-build-bootstrap-guile.sh: line 5:  9416 Done                    /localhome/rwurmus-tmp/guix/test-tmp/store/hjdspi89n2d27lx9c4k3387iip4vk604-xz -dc < /localhome/rwurmus-tmp/guix/test-tmp/store/mhmv9m38s69c7d61hxap2hba928q3hyz-guile-2.0.9.tar.xz
      9417 Segmentation fault      | /localhome/rwurmus-tmp/guix/test-tmp/store/gb5wsd2yr71l075klclydfnkj7qil2yw-tar xv
/localhome/rwurmus-tmp/guix/test-tmp/store/qa6832c56pfysmdjbw1x1fbnxjc7azj5-build-bootstrap-guile.sh: line 8: /localhome/rwurmus-tmp/guix/test-tmp/store/zwq7a0qpq4fljviyycn4zdryqqx2yjn1-guile-bootstrap-2.0/bin/guile: No such file or directory
builder for `/localhome/rwurmus-tmp/guix/test-tmp/store/mfljxqix4a8lqkfcpchrnr8yz4ijwcq0-guile-bootstrap-2.0.drv' failed with exit code 127
@ build-failed /localhome/rwurmus-tmp/guix/test-tmp/store/mfljxqix4a8lqkfcpchrnr8yz4ijwcq0-guile-bootstrap-2.0.drv - 1 builder for `/localhome/rwurmus-tmp/guix/test-tmp/store/mfljxqix4a8lqkfcpchrnr8yz4ijwcq0-guile-bootstrap-2.0.drv' failed with exit code 127
killing process 9412
guix build: error: build failed: build of `/localhome/rwurmus-tmp/guix/test-tmp/store/mfljxqix4a8lqkfcpchrnr8yz4ijwcq0-guile-bootstrap-2.0.drv' failed
13 operations
./test-env: line 1:  9362 Terminated              "/localhome/rwurmus-tmp/guix/pre-inst-env" "/localhome/rwurmus-tmp/guix/guix-daemon" --disable-chroot --substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL"
[rwurmus@guix-builder:/localhome/rwurmus-tmp/guix] (549) $ 
~~~~~~~~~~~~~~~~~~~~~~~~~~

The segfault seems to be in tar.  After replacing both tar and xz with
the versions from the tarball, however, the segfault disappears.  I'm
now running "make check" again.  So far it looks good as it takes longer
than before.

~~ Ricardo