Kernel panic when net booting OpenBMC

Nirenjan Krishnan nkrishnan at nvidia.com
Thu Oct 15 10:42:21 AEDT 2020


Hi,

I’m trying to netboot an OpenBMC image on a custom target board that we are building. The board boots fine when we boot from flash, but when booting from the network, I run into the following kernel panic:

[    1.195106] /dev/root: Can't open blockdev
[    1.195425] VFS: Cannot open root device "nfs" or unknown-block(0,255): error -6
[    1.195736] Please append a correct "root=" boot option; here are the available partitions:
[    1.196391] 1f00           32768 mtdblock0
[    1.196438]  (driver?)
[    1.196769] 1f01             384 mtdblock1
[    1.196775]  (driver?)
[    1.197074] 1f02             128 mtdblock2
[    1.197079]  (driver?)
[    1.197357] 1f03            4352 mtdblock3
[    1.197362]  (driver?)
[    1.197647] 1f04           23808 mtdblock4
[    1.197652]  (driver?)
[    1.197949] 1f05            4096 mtdblock5
[    1.197955]  (driver?)
[    1.198246] 1f06           32768 mtdblock6
[    1.198252]  (driver?)
[    1.198713] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,255)
[    1.199310] CPU: 0 PID: 1 Comm: swapper Not tainted 5.8.0-671550e-dirty-3ae2c18 #1
[    1.199860] Hardware name: Generic DT based system
[    1.200228] Backtrace:
[    1.200671] [<80106f1c>] (dump_backtrace) from [<80107170>] (show_stack+0x20/0x24)
[    1.201155]  r7:00008000 r6:808ec4b4 r5:00000000 r4:808fe258
[    1.201512] [<80107150>] (show_stack) from [<807a5414>] (dump_stack+0x28/0x30)
[    1.201882] [<807a53ec>] (dump_stack) from [<80116160>] (panic+0xf8/0x320)
[    1.202229]  r5:00000000 r4:80b84290
[    1.202499] [<80116068>] (panic) from [<80a01aa0>] (mount_block_root+0x2e4/0x398)
[    1.202881]  r3:80b03008 r2:00000000 r1:8e4a1ec4 r0:808ec4b4
[    1.203168]  r7:00008000
[    1.203316] [<80a017bc>] (mount_block_root) from [<80a01bcc>] (mount_root+0x78/0x94)
[    1.203718]  r10:8098cf04 r9:80a2983c r8:80a2985c r7:00000008 r6:8e4966e0 r5:80a29875
[    1.204102]  r4:000000ff
[    1.204242] [<80a01b54>] (mount_root) from [<80a01d24>] (prepare_namespace+0x13c/0x194)
[    1.204640]  r5:80a29875 r4:80b84028
[    1.204840] [<80a01be8>] (prepare_namespace) from [<80a0154c>] (kernel_init_freeable+0x1b0/0x1f8)
[    1.205282]  r5:80b84000 r4:00000096
[    1.205495] [<80a0139c>] (kernel_init_freeable) from [<807bedc4>] (kernel_init+0x18/0x120)
[    1.205913]  r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:807bedac
[    1.206305]  r4:00000000
[    1.206454] [<807bedac>] (kernel_init) from [<80100128>] (ret_from_fork+0x14/0x2c)
[    1.206898] Exception stack(0x8e4a1fb0 to 0x8e4a1ff8)
[    1.207303] 1fa0:                                     00000000 00000000 00000000 00000000
[    1.207831] 1fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    1.208353] 1fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[    1.208739]  r5:807bedac r4:00000000
[    1.209505] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,255) ]---

I enabled CONFIG_NETWORK_FILESYSTEMS, CONFIG_NFS_FS and CONFIG_ROOT_NFS in the kernel configuration, rebuilt the kernel and verified that the flash boot works fine.

These are the commands that I ran to netboot

ast# tftp 83000000 uImage
ast# tftp 84000000 aspeed.dtb
ast# setenv serverip 10.x.x.x
ast# setenv bootargs root=/dev/nfs rw nfsroot=${serverip}:/data/nfs/test,nolock,tcp console=ttyS4,115200n8 mem.devmem=1 ip=${ipaddr}:${serverip}:${serverip}:255.0.0.0::eth0 nfsrootdebug
ast# bootm 83000000 - 84000000

I also used the fitImage directly instead of a separate uImage and DTB, and ran into the same error. I tried enabling CPIO image builds by adding the following line in local.conf:

IMAGE_FSTYPES += "cpio.${INITRAMFS_CTYPE}.u-boot"

However, if I use the generated CPIO image directly as the initramfs, then all I see is "Starting kernel ..." and no further output from the system.

Could you please suggest how I could go about debugging this? I've followed all the netboot suggestions from these threads on this mailing list:\
- https://lists.ozlabs.org/pipermail/openbmc/2018-June/012054.html
- https://lists.ozlabs.org/pipermail/openbmc/2015-October/000010.html

Thanks and regards
Nirenjan Krishnan



More information about the openbmc mailing list