bug-guix
[Top][All Lists]
Advanced

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

bug#47744: nfs-root-fs test is failing


From: Stefan
Subject: bug#47744: nfs-root-fs test is failing
Date: Sun, 18 Apr 2021 20:29:40 +0200

Hi Mathieu and Danny!

I’m now sure that this test has never been working.

To get it working, first of all we need a change in (gnu system vm) to not 
discard a root file-system of type “nfs”. I did this change. I also cleaned up 
the test itself. See the attached patch.

The test needs two virtual machines communicating over TCP. The NFS client 
machine needs the linux command line argument “ip=dhcp“ (or a static IP 
setting) or some other code inside the initrd to bring the network interface up 
and running before mounting its root file-system over NFS. And finally some 
QEMU networking needs to be setup to have the NFS server and client talk to 
each other with proper IP addresses.

Unfortunately I have no clue how to achieve these two prerequisites. The kernel 
argument “ip=dhcp” does not help, as the driver for the network interface is 
not part of the linux-libre kernel. And also adding the initrd-module e1000 
comes too late. On my Raspberry Pi I’m using a modified kernel with a build-in 
network driver and the “ip=dhcp” argument.

It seems to me that the base-initrd is missing an argument to add some 
arbitrary expression, or an option to configure the network interface, or the 
shepherd service which is provisioning 'networking. For network booting the 
initrd in Guix currently seems to be useless – however, getting rid of it is 
not trivial either.

With the attached changes, the NFS server side tests are passing, but the NFS 
client is missing an own IP address when trying to mount its root file-system, 
which results in this error when executing “make check-system TESTS=nfs-root”:

Welcome, this is GNU's early boot Guile.
Use '--repl' for an initrd REPL.

loading kernel modules...
[   27.250034] e1000: Intel(R) PRO/1000 Network Driver
[   27.250975] e1000: Copyright (c) 1999-2006 Intel Corporation.
[   28.026651] PCI Interrupt Link [LNKC] enabled at IRQ 11
[   28.377771] e1000 0000:00:03.0 eth0: (PCI:33MHz:32-bit) 52:54:00:12:34:56
[   28.388012] e1000 0000:00:03.0 eth0: Intel(R) PRO/1000 Network Connection
[   28.706203] usbcore: registered new interface driver usb-storage
[   28.839354] usbcore: registered new interface driver uas
[   28.922481] hid: raw HID events driver (C) Jiri Kosina
[   28.942031] usbcore: registered new interface driver usbhid
[   28.943247] usbhid: USB HID core driver
[   29.425330] isci: Intel(R) C600 SAS Controller Driver - version 1.2.0
[   30.100062] PCI Interrupt Link [LNKD] enabled at IRQ 10
[   30.724003] PCI Interrupt Link [LNKA] enabled at IRQ 10
[   31.335165] PCI Interrupt Link [LNKB] enabled at IRQ 11
[   32.129714] virtio_blk virtio3: [vda] 143360 512-byte logical blocks (73.4 
MB/70.0 MiB)
[   32.167257]  vda: vda1 vda2
[   32.526742] random: crng init done
[   32.624351] FS-Cache: Loaded
[   32.675399] 9pnet: Installing 9P2000 support
[   32.692551] 9p: Installing v9fs 9p2000 file system support
[   32.695268] FS-Cache: Netfs '9p' registered for caching
configuring QEMU networking...
[   32.842717] e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: 
RX
[   32.859236] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
In gnu/build/linux-boot.scm:
   599:12  3 (_)
    423:8  2 (mount-root-file-system ":/export" "nfs" # _ #:flags _ # ?)
In unknown file:
           1 (mount ":/export" "/real-root" "nfs" 1 "addr=127.0.0.1")
In ice-9/boot-9.scm:
  1669:16  0 (raise-exception _ #:continuable? _)
In procedure mount: No such device
[   33.616971] Kernel panic - not syncing: Attempted to kill init! 
exitcode=0x00000000


Bye

Stefan


Attachment: 0001-NFS-root-for-virtual-machines.patch
Description: Binary data


reply via email to

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