Skip to content

Initramfs specified by INITRD= not found by Linux #52

Open
@synackd

Description

@synackd

When testing with the QEMU board, Linux seems to be unable to find the initramfs passed via INITRD=in the make command, only seeming to work when the initramfs is compiled into the kernel via CONFIG_INITRAMFS_SOURCE.

For instance, when building the QEMU board with Linux 4.14.62 and the following make command:

make BOARD=qemu KERNEL=bzImage INITRD=initramfs.cpio.xz

...the following is the trimmed output of Linux:

[...]
[    1.126287] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
[    1.131970] Please append a correct "root=" boot option; here are the available partitions:
[    1.137506] 0100           65536 ram0 
[    1.137542]  (driver?)
[    1.148742] 0101           65536 ram1 
[    1.148757]  (driver?)
[    1.157381] 0102           65536 ram2 
[    1.157392]  (driver?)
[    1.166110] 0103           65536 ram3 
[    1.166121]  (driver?)
[    1.174361] 0104           65536 ram4 
[    1.174371]  (driver?)
[    1.183369] 0105           65536 ram5 
[    1.183379]  (driver?)
[    1.191239] 0106           65536 ram6 
[    1.191248]  (driver?)
[    1.199519] 0107           65536 ram7 
[    1.199532]  (driver?)
[    1.206887] 0108           65536 ram8 
[    1.206897]  (driver?)
[    1.215189] 0109           65536 ram9 
[    1.215201]  (driver?)
[    1.222033] 010a           65536 ram10 
[    1.222042]  (driver?)
[    1.230619] 010b           65536 ram11 
[    1.230639]  (driver?)
[    1.238051] 010c           65536 ram12 
[    1.238061]  (driver?)
[    1.246527] 010d           65536 ram13 
[    1.246538]  (driver?)
[    1.252880] 010e           65536 ram14 
[    1.252890]  (driver?)
[    1.259175] 010f           65536 ram15 
[    1.259203]  (driver?)
[    1.266338] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    1.269803] Kernel Offset: disabled
[    1.273164] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

The kernel cannot find the initramfs.cpio.xz, even though it is included in the linuxboot.rom.

EDIT: Clarified that INITRD= is a build parameter, not a kernel parameter.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions