Search code examples
raspberry-piembedded-linuxbootloadernfsu-boot

Unable to mount root fs via NFS on Raspberry Pi 4 (U-Boot)


I'm facing an issue while trying to mount the root filesystem via NFS on Raspberry Pi 4 in u-boot .

Here are the details of my setup:

  • Raspberry Pi 4
  • U-Boot version: 2023.04
  • Host kernel version: 5.15.0-78-generic
  • NFS Server PC IP: 192.168.2.51
  • NFS Server configuration (/etc/exports): /tmp/rootfs *(rw,no_root_squash,no_subtree_check)
  • Bootargs in U-Boot :
console=ttyS0,115200 8250.nr_uarts=1 maxcpus=1 swiotlb=256 root=/dev/nfs nfsroot=192.168.2.51:tmp/rootfs,nfsvers=3,tcp ip=192.168.2.20:::255.255.255.0:myboard:eth0:on 
  • Boot command in U-Boot:
bootcmd=load mmc 0:1 ${kernel_addr_r} Image; load mmc 0:1 ${fdt_addr_r} bcm2711-rpi-4-b.dtb; booti ${kernel_addr_r} - ${fdt_addr_r}

I have set up an NFS server on my PC, and I believe the configuration is correct as the Raspberry Pi successfully pings the PC (192.168.2.51).

However, when I try to boot the Raspberry Pi, I encounter the following error:

IP-Config: Complete:
device=eth0, hwaddr=dc:a6:32:13:da:5a, ipaddr=192.168.2.20, mask=255.255.255.0, gw=255.255.255.255
host=192.168.2.20, domain=, nis-domain=(none)
bootserver=255.255.255.255, rootserver=192.168.2.51, rootpath=
VFS: Unable to mount root fs via NFS.

I have checked the network connectivity, and the Raspberry Pi can successfully communicate with the PC.

The complete bootlog is placed below:

U-Boot 2023.04 (Jul 20 2023 - 17:47:11 +0330)

DRAM:  128 MiB
RPI 4 Model B (0xa03111)
Core:  210 devices, 16 uclasses, devicetree: board
MMC:   mmcnr@7e300000: 1, mmc@7e340000: 0
Loading Environment from FAT... OK
In:    serial
Out:   serial
Err:   serial
Net:   eth0: ethernet@7d580000
PCIe BRCM: link up, 5.0 Gbps x1 (SSC)
starting USB...
Bus xhci_pci: Register 5000420 NbrPorts 5
Starting the controller
USB XHCI 1.00
scanning bus xhci_pci for devices... 2 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0 
22473216 bytes read in 1219 ms (17.6 MiB/s)
54388 bytes read in 16 ms (3.2 MiB/s)
Moving Image from 0x80000 to 0x200000, end=1880000
## Flattened Device Tree blob at 02600000
   Booting using the fdt blob at 0x2600000
Working FDT set to 2600000
   Using Device Tree in place at 0000000002600000, end 0000000002610473
Working FDT set to 2600000

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd083]
[    0.000000] Linux version 6.1.21-v8 (pejman@pejman-ws) (aarch64-rpi4-linux-gnu-gcc (crosstool-NG 1.25.0) 11.2.0, GNU ld (crosstool-NG 1.25.0) 2.38) #1 SMP PREEMPT Thu Jul 20 17:58:03 +0330 2023
[    0.000000] Machine model: Raspberry Pi 4 Model B Rev 1.1
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created CMA memory pool at 0x0000000004000000, size 64 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000000000-0x0000000007ffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x0000000007ffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000007ffffff]
[    0.000000] percpu: Embedded 29 pages/cpu s78440 r8192 d32152 u118784
[    0.000000] Detected PIPT I-cache on CPU0
[    0.000000] CPU features: detected: Spectre-v2
[    0.000000] CPU features: detected: Spectre-v3a
[    0.000000] CPU features: detected: Spectre-v4
[    0.000000] CPU features: detected: Spectre-BHB
[    0.000000] CPU features: kernel page table isolation forced ON by KASLR
[    0.000000] CPU features: detected: Kernel page table isolation (KPTI)
[    0.000000] CPU features: detected: ARM erratum 1742098
[    0.000000] CPU features: detected: ARM errata 1165522, 1319367, or 1530923
[    0.000000] alternatives: applying boot alternatives
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 32256
[    0.000000] Kernel command line: console=ttyS0,115200 8250.nr_uarts=1 maxcpus=1 swiotlb=256 root=/dev/nfs nfsroot=192.168.2.51:tmp/rootfs,nfsvers=3,tcp ip=192.168.2.20:::255.255.255.0:myboard:eth0:on
[    0.000000] Dentry cache hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.000000] Inode-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 39176K/131072K available (11968K kernel code, 2106K rwdata, 3644K rodata, 4096K init, 1077K bss, 26360K reserved, 65536K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] ftrace: allocating 38538 entries in 151 pages
[    0.000000] ftrace: allocated 151 pages with 5 groups
[    0.000000] trace event string verifier disabled
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4.
[    0.000000]  Trampoline variant of Tasks RCU enabled.
[    0.000000]  Rude variant of Tasks RCU enabled.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] Root IRQ handler: gic_handle_irq
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer(s) running at 54.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0xc743ce346, max_idle_ns: 440795203123 ns
[    0.000001] sched_clock: 56 bits at 54MHz, resolution 18ns, wraps every 4398046511102ns
[    0.000310] Console: colour dummy device 80x25
[    0.000371] Calibrating delay loop (skipped), value calculated using timer frequency.. 108.00 BogoMIPS (lpj=216000)
[    0.000395] pid_max: default: 32768 minimum: 301
[    0.000501] LSM: Security Framework initializing
[    0.000672] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.000695] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.001964] cgroup: Disabling memory control group subsystem
[    0.004267] cblist_init_generic: Setting adjustable number of callback queues.
[    0.004282] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.004473] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.004659] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.005106] rcu: Hierarchical SRCU implementation.
[    0.005117] rcu:     Max phase no-delay instances is 1000.
[    0.006454] EFI services will not be available.
[    0.007016] smp: Bringing up secondary CPUs ...
[    0.007028] smp: Brought up 1 node, 1 CPU
[    0.007040] SMP: Total of 1 processors activated.
[    0.007054] CPU features: detected: 32-bit EL0 Support
[    0.007063] CPU features: detected: 32-bit EL1 Support
[    0.007076] CPU features: detected: CRC32 instructions
[    0.007180] CPU: All CPU(s) started at EL2
[    0.007211] alternatives: applying system-wide alternatives
[    0.008740] devtmpfs: initialized
[    0.020255] Enabled cp15_barrier support
[    0.020282] Enabled setend support
[    0.020496] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.020529] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.022365] pinctrl core: initialized pinctrl subsystem
[    0.023179] DMI not present or invalid.
[    0.024211] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.027886] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[    0.028030] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.028277] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.028364] audit: initializing netlink subsys (disabled)
[    0.029173] thermal_sys: Registered thermal governor 'step_wise'
[    0.029255] cpuidle: using governor menu
[    0.029449] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.029508] ASID allocator initialised with 32768 entries
[    0.029674] Serial: AMBA PL011 UART driver
[    0.036127] audit: type=2000 audit(0.028:1): state=initialized audit_enabled=0 res=1
[    0.040732] bcm2835-mbox fe00b880.mailbox: mailbox enabled
[    0.056194] raspberrypi-firmware soc:firmware: Attached to firmware from 2023-04-25T18:26:03, variant start
[    0.060209] raspberrypi-firmware soc:firmware: Firmware hash is d7f9c2b4ef7e4a8c0b04374a879ce89d7a948453
[    0.074997] KASLR enabled
[    0.117281] bcm2835-dma fe007000.dma: DMA legacy API manager, dmachans=0x1
[    0.122951] SCSI subsystem initialized
[    0.123162] usbcore: registered new interface driver usbfs
[    0.123217] usbcore: registered new interface driver hub
[    0.123291] usbcore: registered new device driver usb
[    0.123629] usb_phy_generic phy: supply vcc not found, using dummy regulator
[    0.123829] usb_phy_generic phy: dummy supplies not allowed for exclusive requests
[    0.124167] pps_core: LinuxPPS API ver. 1 registered
[    0.124179] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]>
[    0.124202] PTP clock support registered
[    0.129272] vgaarb: loaded
[    0.136750] clocksource: Switched to clocksource arch_sys_counter
[    0.137427] VFS: Disk quotas dquot_6.6.0
[    0.137507] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.137689] FS-Cache: Loaded
[    0.137858] CacheFiles: Loaded
[    0.148085] NET: Registered PF_INET protocol family
[    0.152804] IP idents hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.153824] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.153854] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.153877] TCP established hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.153900] TCP bind hash table entries: 1024 (order: 3, 32768 bytes, linear)
[    0.153936] TCP: Hash tables configured (established 1024 bind 1024)
[    0.154052] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.154077] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.154294] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.155027] RPC: Registered named UNIX socket transport module.
[    0.155040] RPC: Registered udp transport module.
[    0.155050] RPC: Registered tcp transport module.
[    0.155059] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.155082] PCI: CLS 0 bytes, default 64
[    0.156984] hw perfevents: enabled with armv8_cortex_a72 PMU driver, 7 counters available
[    0.157341] kvm [1]: IPA Size Limit: 44 bits
[    0.160759] kvm [1]: vgic interrupt IRQ9
[    0.160855] kvm [1]: Hyp mode initialized successfully
[    1.230845] Initialise system trusted keyrings
[    1.232629] workingset: timestamp_bits=46 max_order=15 bucket_order=0
[    1.240131] zbud: loaded
[    1.242999] NFS: Registering the id_resolver key type
[    1.243060] Key type id_resolver registered
[    1.243071] Key type id_legacy registered
[    1.243186] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.243202] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    1.244550] Key type asymmetric registered
[    1.244567] Asymmetric key parser 'x509' registered
[    1.244644] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 247)
[    1.244938] io scheduler mq-deadline registered
[    1.244954] io scheduler kyber registered
[    1.254207] brcm-pcie fd500000.pcie: host bridge /scb/pcie@7d500000 ranges:
[    1.254246] brcm-pcie fd500000.pcie:   No bus range found for /scb/pcie@7d500000, using [bus 00-ff]
[    1.254335] brcm-pcie fd500000.pcie:      MEM 0x0600000000..0x063fffffff -> 0x00c0000000
[    1.254424] brcm-pcie fd500000.pcie:   IB MEM 0x0000000000..0x003fffffff -> 0x0400000000
[    1.255404] brcm-pcie fd500000.pcie: PCI host bridge to bus 0000:00
[    1.255422] pci_bus 0000:00: root bus resource [bus 00-ff]
[    1.255440] pci_bus 0000:00: root bus resource [mem 0x600000000-0x63fffffff] (bus address [0xc0000000-0xffffffff])
[    1.255512] pci 0000:00:00.0: [14e4:2711] type 01 class 0x060400
[    1.255773] pci 0000:00:00.0: PME# supported from D0 D3hot
[    1.259775] pci_bus 0000:01: supply vpcie3v3 not found, using dummy regulator
[    1.259952] pci_bus 0000:01: supply vpcie3v3aux not found, using dummy regulator
[    1.260067] pci_bus 0000:01: supply vpcie12v not found, using dummy regulator
[    1.306846] brcm-pcie fd500000.pcie: link up, 5.0 GT/s PCIe x1 (SSC)
[    1.307008] pci 0000:01:00.0: [1106:3483] type 00 class 0x0c0330
[    1.307133] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x00000fff 64bit]
[    1.307580] pci 0000:01:00.0: PME# supported from D0 D3cold
[    1.308324] pci 0000:00:00.0: BAR 8: assigned [mem 0x600000000-0x6000fffff]
[    1.308350] pci 0000:01:00.0: BAR 0: assigned [mem 0x600000000-0x600000fff 64bit]
[    1.308392] pci 0000:00:00.0: PCI bridge to [bus 01]
[    1.308414] pci 0000:00:00.0:   bridge window [mem 0x600000000-0x6000fffff]
[    1.309406] bcm2708_fb soc:fb: Unable to determine number of FBs. Disabling driver.
[    1.309421] bcm2708_fb: probe of soc:fb failed with error -2
[    1.316415] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled
[    1.319362] iproc-rng200 fe104000.rng: hwrng registered
[    1.319850] vc-mem: phys_addr:0x00000000 mem_base=0x00000000 mem_size:0x00000000(0 MiB)
[    1.321486] gpiomem-bcm2835 fe200000.gpiomem: Initialised: Registers at 0xfe200000
[    1.333416] brd: module loaded
[    1.342448] loop: module loaded
[    1.343172] Loading iSCSI transport class v2.0-870.
[    1.348270] bcmgenet fd580000.ethernet: GENET 5.0 EPHY: 0x0000
[    1.408918] unimac-mdio unimac-mdio.-19: Broadcom UniMAC MDIO bus
[    1.410042] usbcore: registered new interface driver r8152
[    1.410111] usbcore: registered new interface driver lan78xx
[    1.410185] usbcore: registered new interface driver smsc95xx
[    1.411746] pci 0000:00:00.0: enabling device (0000 -> 0002)
[    1.411784] xhci_hcd 0000:01:00.0: enabling device (0000 -> 0002)
[    1.411888] xhci_hcd 0000:01:00.0: xHCI Host Controller
[    1.411917] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 1
[    1.412621] xhci_hcd 0000:01:00.0: hcc params 0x002841eb hci version 0x100 quirks 0x0001e40000000890
[    1.413335] xhci_hcd 0000:01:00.0: xHCI Host Controller
[    1.413357] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 2
[    1.413379] xhci_hcd 0000:01:00.0: Host supports USB 3.0 SuperSpeed
[    1.413757] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.01
[    1.413777] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.413792] usb usb1: Product: xHCI Host Controller
[    1.413806] usb usb1: Manufacturer: Linux 6.1.21-v8 xhci-hcd
[    1.413818] usb usb1: SerialNumber: 0000:01:00.0
[    1.414581] hub 1-0:1.0: USB hub found
[    1.414676] hub 1-0:1.0: 1 port detected
[    1.415692] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 6.01
[    1.415711] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.415725] usb usb2: Product: xHCI Host Controller
[    1.415738] usb usb2: Manufacturer: Linux 6.1.21-v8 xhci-hcd
[    1.415751] usb usb2: SerialNumber: 0000:01:00.0
[    1.416424] hub 2-0:1.0: USB hub found
[    1.416489] hub 2-0:1.0: 4 ports detected
[    1.418168] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[    1.419019] usbcore: registered new interface driver uas
[    1.419114] usbcore: registered new interface driver usb-storage
[    1.419334] mousedev: PS/2 mouse device common for all mice
[    1.425275] sdhci: Secure Digital Host Controller Interface driver
[    1.425288] sdhci: Copyright(c) Pierre Ossman
[    1.425860] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.429115] ledtrig-cpu: registered to indicate activity on CPUs
[    1.429462] hid: raw HID events driver (C) Jiri Kosina
[    1.429668] usbcore: registered new interface driver usbhid
[    1.429681] usbhid: USB HID core driver
[    1.436160] NET: Registered PF_PACKET protocol family
[    1.436290] Key type dns_resolver registered
[    1.437378] registered taskstats version 1
[    1.437453] Loading compiled-in X.509 certificates
[    1.438303] Key type .fscrypt registered
[    1.438316] Key type fscrypt-provisioning registered
[    1.455801] uart-pl011 fe201000.serial: there is not valid maps for state default
[    1.456630] uart-pl011 fe201000.serial: cts_event_workaround enabled
[    1.456879] fe201000.serial: ttyAMA0 at MMIO 0xfe201000 (irq = 35, base_baud = 0) is a PL011 rev2
[    1.457142] serial serial0: tty port ttyAMA0 registered
[    1.465296] bcm2835-aux-uart fe215040.serial: there is not valid maps for state default
[    1.466170] printk: console [ttyS0] disabled
[    1.466280] fe215040.serial: ttyS0 at MMIO 0xfe215040 (irq = 36, base_baud = 62500000) is a 16550
[    1.684023] usb 1-1: new high-speed USB device number 2 using xhci_hcd
[    1.888317] usb 1-1: New USB device found, idVendor=2109, idProduct=3431, bcdDevice= 4.21
[    1.888338] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[    1.888353] usb 1-1: Product: USB2.0 Hub
[    1.908928] hub 1-1:1.0: USB hub found
[    1.909223] hub 1-1:1.0: 4 ports detected
[    2.857702] printk: console [ttyS0] enabled
[    2.863584] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[    2.870499] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
[    2.879275] mmc-bcm2835 fe300000.mmcnr: mmc_debug:0 mmc_debug2:0
[    2.885405] mmc-bcm2835 fe300000.mmcnr: DMA channel allocated
[    2.923016] of_cfs_init
[    2.927730] of_cfs_init: OK
[    2.965356] mmc0: SDHCI controller on fe340000.mmc [fe340000.mmc] using ADMA
[    2.978020] bcmgenet fd580000.ethernet: configuring instance for external RGMII (RX delay)
[    2.988693] bcmgenet fd580000.ethernet eth0: Link is Down
[    3.023014] mmc0: new high speed SDHC card at address 59b4
[    3.029887] mmcblk0: mmc0:59b4 SD    7.50 GiB 
[    3.040698]  mmcblk0: p1
[    3.045274] mmc1: new high speed SDIO card at address 0001
[    3.051197] mmcblk0: mmc0:59b4 SD    7.50 GiB
[    7.072972] bcmgenet fd580000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[    7.100776] IP-Config: Complete:
[    7.104056]      device=eth0, hwaddr=dc:a6:32:13:da:5a, ipaddr=192.168.2.20, mask=255.255.255.0, gw=255.255.255.255
[    7.114676]      host=myboard, domain=, nis-domain=(none)
[    7.120172]      bootserver=255.255.255.255, rootserver=192.168.2.51, rootpath=
[  105.447250] VFS: Unable to mount root fs via NFS.
[  105.459809] devtmpfs: mounted
[  105.470478] Freeing unused kernel memory: 4096K
[  105.475275] Run /sbin/init as init process
[  105.479689] Run /etc/init as init process
[  105.484015] Run /bin/init as init process
[  105.488325] Run /bin/sh as init process
[  105.492471] Kernel panic - not syncing: No working init found.  Try passing init= option to kernel. See Linux Documentation/admin-guide/init.rst for guidance.
[  105.506854] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.1.21-v8 #1
[  105.513129] Hardware name: Raspberry Pi 4 Model B Rev 1.1 (DT)
[  105.519044] Call trace:
[  105.521520]  dump_backtrace.part.0+0xe8/0x100
[  105.525949]  show_stack+0x20/0x30
[  105.529312]  dump_stack_lvl+0x8c/0xb8
[  105.533030]  dump_stack+0x18/0x34
[  105.536392]  panic+0x19c/0x374
[  105.539492]  kernel_init+0x138/0x140
[  105.543122]  ret_from_fork+0x10/0x20
[  105.546756] Kernel Offset: 0x2621600000 from 0xffffffc008000000
[  105.552759] PHYS_OFFSET: 0x0
[  105.555676] CPU features: 0x20000,2013c080,0000421b
[  105.560625] Memory Limit: none
[  105.563725] ---[ end Kernel panic - not syncing: No working init found.  Try passing init= option to kernel. See Linux Documentation/admin-guide/init.rst for guidance. ]---


Could you please help me identify the possible causes of this "Unable to mount root fs via NFS" error? Any suggestions or insights on how to resolve this issue would be greatly appreciated.

Thank you!


Solution

  • I had a typo in bootargs; the directory name in the nfsroot= parameter was not an absolute path and missing the leading slash.
    The corrected version is as follows:

    console=ttyS0,115200 8250.nr_uarts=1 maxcpus=1 swiotlb=256 root=/dev/nfs nfsroot=192.168.2.51:/tmp/rootfs,nfsvers=3,tcp ip=192.168.2.20
     
    

    The problem was solved .