Subject: bug#33152: closed (Re: bug#33152: Indeterministic test failure in qemu-minimal)

From: [email-masked] (GNU bug Tracking System)
Date: Mon, 15 Mar 2021 22:00:02 +0000

Your bug report

#33152: Indeterministic test failure in qemu-minimal

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
33152: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=33152
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#33152: Indeterministic test failure in qemu-minimal
From: Maxim Cournoyer <[email-masked]>
To: Edouard KLEIN <[email-masked]>
Cc: Gábor Boskovits <[email-masked]>, Ludovic Courtès <[email-masked]>, [email-masked]
Date: Mon, 15 Mar 2021 17:59:36 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi everyone,

Edouard KLEIN <[email-masked]> writes:

> Hi,
>
> Sorry for the delay:
>
> $guix --version
> guix (GNU Guix) 0.15.0
> Copyright (C) 2018 the Guix authors
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html
>>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
>
>
> Please let me know if I can be of assistance. I've tried running the
> command a few more times but it succeeds now. I'll let you know if it fails
> again.
>
> On Fri, 26 Oct 2018 at 20:24 Gábor Boskovits <[email-masked]> wrote:
>
>> Hello Ludo,
>>
>> Ludovic Courtès <[email-masked]> ezt írta (időpont: 2018. okt. 26., P,
>> 19:58):
>> >
>> > Hello Gábor,
>> >
>> > (Should we be Cc’ing this to Edouard?)
>> >
>>
>> Yes, and done.
>>
>> > Gábor Boskovits <[email-masked]> skribis:
>> >
>> > > ERROR:tests/test-replication.c:117:test_blk_write: assertion failed:
>> > > (async_ret == 0)
>> > > FAIL
>> > > GTester: last random seed: R02Sb499c9e89b18bb967dd59acad1b2aaa8
>> > > (pid=14865)
>> > >   /replication/secondary/stop:
>>  OK
>> > >   /replication/secondary/do_checkpoint:
>> OK
>> > >   /replication/secondary/get_error_all:
>> OK
>> > > FAIL: tests/test-replication
>> > > make: ***
>> [/tmp/guix-build-qemu-minimal-2.10.2.drv-0/qemu-2.10.2/tests/Makefile.include:849:
>> >
>> > […]
>> >
>> > > builder for
>> `/gnu/store/5q7ixx1qjf7msamr052jc5jyfilhpsai-qemu-minimal-2.10.2.drv'
>> failed with exit code 1 cannot build derivation
>> >
>> > Which Guix version is it, as reported by ‘guix describe’ or ‘guix
>> > --version’?  (We’ve been providing QEMU 3.0 since August 2018, commit
>> > 5dc8437fc0ff3dedf75de2183e3bf9d493e4aa81, so this must be close to
>> > 0.15.0.)
>> >
>>
>> Edouard, could you please provide the requested details.
>>
>> > This may be a non-deterministic build failure, which shows up because
>> > hydra.gnu.org is currently off-line and so substitutes are unavailable.
>> >
>>
>> I have a feeling, that this could well happen on the build farm, as it
>> seems
>> that there is indeterministic behaviour in the testsuite. Having the
>> substitutes
>> availble would only hide the bug. WDYT?
>>
>> > Thanks,
>> > Ludo’.
>>
>> Best regards,
>> g_bor
>>

This bug is very old.  We're now at Guix 1.2.0 and QEMU 5.2.0.  If there
are still problems with building QEMU on your system, please create a
fresh bug report.

Closing.

Thank you!

Maxim

Subject: Indeterministic test failure in qemu-minimal
From: Gábor Boskovits <[email-masked]>
To: [email-masked]
Date: Thu, 25 Oct 2018 17:57:54 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

---------- Forwarded message ---------
From: Edouard KLEIN <[email-masked]>
Date: 2018. okt. 25., Cs, 15:34
Subject: Using 'guix system disk-image' on a non-GuixSD OS
To: <[email-masked]>

Hi all,

I do not know whether the "guix system disk-image" command is supposed
to work on a non GuixSD system.

If it is, then I'm running into an error while trying to create a disk
from a system declaration on my Arch Linux OS.

I run:
$ guix system disk-image --fallback config.scm

with config.scm copied at the end of this email.

I get the error message at the end of this emai.

I do not really know where to start looking. It appears that the error
is in the qemu package, which is necessary for grub. I tried removing
the bootloader part of the system declaration, as I can boot from the
ext4 partition directly, but it seems necessary to have one such part
in the OS declaration.

Any help would be appreciated. In the meantime I'm running the command
in a GuixSD VM, but it's taking forever and it's way more cumbersome
than being able to run it on any system.

Thanks in advance,

Edouard.

---------------config.scm

;; This is an operating system configuration template
;; for a "bare bones" setup, with no X11 display server.

(use-modules (gnu))
(use-service-modules networking ssh)
(use-package-modules screen ssh)

(operating-system
  (host-name "GuixSD_Base")
  (timezone "UTC")
  (locale "en_US.utf8")

  ;; Boot in "legacy" BIOS mode, assuming /dev/sdX is the
  ;; target hard disk, and "my-root" is the label of the target
  ;; root file system.
  (bootloader (bootloader-configuration
                (bootloader grub-bootloader)
                (target "/dev/sda")))
  (file-systems (cons (file-system
                        (device (file-system-label "my-root"))
                        (mount-point "/")
                        (type "ext4"))
                      %base-file-systems))

  ;; This is where user accounts are specified.  The "root"
  ;; account is implicit, and is initially created with the
  ;; empty password.
  (users (cons (user-account
                (name "edouard")
                (comment "boudoir")
                (group "users")

                ;; Adding the account to the "wheel" group
                ;; makes it a sudoer.  Adding it to "audio"
                ;; and "video" allows the user to play sound
                ;; and access the webcam.
                (supplementary-groups '("wheel"
                                        "audio" "video"))
                (home-directory "/home/edouard"))
               %base-user-accounts))

  ;; Globally-installed packages.
  (packages (append (map specification->package
                         '("tmux" "openssh"))
                    %base-packages))

  ;; Add services to the baseline: a DHCP client and
  ;; an SSH server.
  (services (cons* (dhcp-client-service)
                   (service openssh-service-type
                            (openssh-configuration
                             (authorized-keys
                              '(("edouard" ,(local-file "edouard.pub"))
                                ("root" ,(local-file "edouard.pub"))))
                       (permit-root-login 'without-password)
                             (port-number 22)))
                   %base-services)))
------------error message
c++ -I/gnu/store/pslvw8b4r0m5vmbz2ml7whcv2wbdpa57-pixman-0.34.0/include/pixman-1
-I/tmp/guix-build-qemu-minimal-2.10.2.drv-0/qemu-2.10.2/dtc/libfdt
-pthread -I/gnu/s[14/1947]
cagl47zbb6krfpmwm31m70s9pk00-glib-2.56.0/include/glib-2.0
-I/gnu/store/x9lfcagl47zbb6krfpmwm31m70s9pk00-glib-2.56.0/lib/glib-2.0/include
-DNCURSES_WIDECHAR -D_GNU_SOURCE -D_D
EFAULT_SOURCE -fPIE -DPIE -m64 -mcx16 -D_GNU_SOURCE
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes
-Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-p
rototypes -fno-strict-aliasing -fno-common -fwrapv  -Wendif-labels
-Wno-missing-include-dirs -Wempty-body -Wnested-externs
-Wformat-security -Wformat-y2k -Winit-self -Wignore
d-qualifiers -Wold-style-declaration -Wold-style-definition
-Wtype-limits -fstack-protector-strong
-I/gnu/store/8679cp88yg5jrq2q1944xf14ibyp1kp7-libpng-1.6.34/include/libpn
g16 -I/tmp/guix-build-qemu-minimal-2.10.2.drv-0/qemu-2.10.2/tests -O2
-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2  -Wl,--warn-common -Wl,-z,relro
-Wl,-z,now -pie -m64 -Wl,--warn-co
mmon -Wl,-z,relro -Wl,-z,now -pie -m64 -lrt -o tests/test-replication
tests/test-replication.o block.o blockjob.o qemu-io-cmds.o
replication.o block/raw-format.o block/qcow.o
 block/vdi.o block/vmdk.o block/cloop.o block/bochs.o block/vpc.o
block/vvfat.o block/dmg.o block/qcow2.o block/qcow2-refcount.o
block/qcow2-cluster.o block/qcow2-snapshot.o
block/qcow2-cache.o block/qcow2-bitmap.o block/qed.o
block/qed-l2-cache.o block/qed-table.o block/qed-cluster.o
block/qed-check.o block/vhdx.o block/vhdx-endian.o block/vhdx-
log.o block/quorum.o block/parallels.o block/blkdebug.o
block/blkverify.o block/blkreplay.o block/block-backend.o
block/snapshot.o block/qapi.o block/file-posix.o block/linux
-aio.o block/null.o block/mirror.o block/commit.o block/io.o
block/throttle-groups.o block/nbd.o block/nbd-client.o
block/sheepdog.o block/accounting.o block/dirty-bitmap.o b
lock/write-threshold.o block/backup.o block/replication.o
block/crypto.o nbd/server.o nbd/client.o nbd/common.o block/dmg-bz2.o
io/channel.o io/channel-buffer.o io/channel-co
mmand.o io/channel-file.o io/channel-socket.o io/channel-tls.o
io/channel-watch.o io/channel-websock.o io/channel-util.o
io/dns-resolver.o io/task.o crypto/init.o crypto/hash
.o crypto/hash-glib.o crypto/hmac.o crypto/hmac-glib.o crypto/aes.o
crypto/desrfb.o crypto/cipher.o crypto/tlscreds.o
crypto/tlscredsanon.o crypto/tlscredsx509.o crypto/tlsse
ssion.o crypto/secret.o crypto/random-platform.o crypto/pbkdf.o
crypto/ivgen.o crypto/ivgen-essiv.o crypto/ivgen-plain.o
crypto/ivgen-plain64.o crypto/afsplit.o crypto/xts.o
crypto/block.o crypto/block-qcow.o crypto/block-luks.o qom/object.o
qom/container.o qom/qom-qobject.o qom/object_interfaces.o
tests/iothread.o  libqemuutil.a libqemustub.a  -
lz -laio -lbz2 -lm
-L/gnu/store/x9lfcagl47zbb6krfpmwm31m70s9pk00-glib-2.56.0/lib
-lgthread-2.0 -pthread -lglib-2.0  -lz -lz  -lutil
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
gtester -k --verbose -m=quick tests/test-replication
TEST: tests/test-replication... (pid=14861)
  /replication/primary/read:                                           OK
  /replication/primary/write:                                          OK
  /replication/primary/start:                                          OK
  /replication/primary/stop:                                           OK
  /replication/primary/do_checkpoint:                                  OK
  /replication/primary/get_error_all:                                  OK
  /replication/secondary/read:                                         OK
  /replication/secondary/write:                                        OK
  /replication/secondary/start:                                        **
ERROR:tests/test-replication.c:117:test_blk_write: assertion failed:
(async_ret == 0)
FAIL
GTester: last random seed: R02Sb499c9e89b18bb967dd59acad1b2aaa8
(pid=14865)
  /replication/secondary/stop:                                         OK
  /replication/secondary/do_checkpoint:                                OK
  /replication/secondary/get_error_all:                                OK
FAIL: tests/test-replication
make: *** [/tmp/guix-build-qemu-minimal-2.10.2.drv-0/qemu-2.10.2/tests/Makefile.include:849:
check-tests/test-replication] Error 1

Test suite failed, dumping logs.
Backtrace:
           4 (primitive-load "/gnu/store/5v4cdxg9m4x6hax86g1q7jw5bch…")
In ice-9/eval.scm:
   191:35  3 (_ _)
In srfi/srfi-1.scm:
    640:9  2 (for-each #<procedure a06400 at /gnu/store/f95ghy8mx00…> …)
In /gnu/store/f95ghy8mx00fc22nrvswvnpqlfdkf2nk-module-import/guix/build/gnu-build-system.scm:
   799:31  1 (_ _)
    369:6  0 (check #:target _ #:make-flags _ #:tests? _ # _ # _ # _)

/gnu/store/f95ghy8mx00fc22nrvswvnpqlfdkf2nk-module-import/guix/build/gnu-build-system.scm:369:6:
In procedure check:
Throw to key `srfi-34' with args `(#<condition &invoke-error [program:
"make" arguments: ("check") exit-status: 2 term-signal: #f
stop-signal: #f] 986a40>)'.
builder for `/gnu/store/5q7ixx1qjf7msamr052jc5jyfilhpsai-qemu-minimal-2.10.2.drv'
failed with exit code 1
cannot build derivation
`/gnu/store/5i56cl8c6608azkn67qy54nf2kqxfhkl-grub-2.02.drv': 1
dependencies couldn't be built
guix system: error: build failed: build of
`/gnu/store/5i56cl8c6608azkn67qy54nf2kqxfhkl-grub-2.02.drv' failed

It worked without errors the second time.

g_bor