generic arm64 kernel can not boot initrdless and there is no -kvm kernel

Bug #1931841 reported by Thomas Bechtold
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

The CPC team wants to build minimal arm64 images. Those images should boot initrdless (similar to the amd64 images where the -kvm kernel is used).
But booting an initrdless image (build with livecd-rootfs) does fail with:

$ sudo qemu-system-aarch64 -m 2G -M virt -cpu max -bios /usr/share/qemu-efi-aarch64/QEMU_EFI.fd -drive if=none,format=qcow2,file=livecd.ubuntu-cpc.img,id=hd0 -device virtio-blk-device,drive=hd0 -device e1000,netdev=net0 -netdev user,id=net0,hostfwd=tcp:127.0.0.1:5555-:22 -nographic

[snipped]

[ 0.945928] VFS: Cannot open root device "PARTUUID=15058d73-bec1-4c7d-9cd7-f0f73f3ec694" or unknown-block(0,0): error -6
[ 0.946117] Please append a correct "root=" boot option; here are the available partitions:
[ 0.947611] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 0.948139] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.4.0-74-generic #83-Ubuntu
[ 0.948237] Hardware name: QEMU QEMU Virtual Machine, BIOS 0.0.0 02/06/2015
[ 0.948453] Call trace:
[ 0.948736] dump_backtrace+0x0/0x190
[ 0.948864] show_stack+0x28/0x38
[ 0.948918] dump_stack+0xb4/0x10c
[ 0.948974] panic+0x150/0x364
[ 0.949027] mount_block_root+0x248/0x304
[ 0.949090] mount_root+0x48/0x50
[ 0.949145] prepare_namespace+0x13c/0x1bc
[ 0.949205] kernel_init_freeable+0x270/0x2c4
[ 0.949274] kernel_init+0x1c/0x114
[ 0.949336] ret_from_fork+0x10/0x18
[ 0.949913] Kernel Offset: disabled
[ 0.950175] CPU features: 0x0952,20e0a230
[ 0.950251] Memory Limit: none
[ 0.950595] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) ]---

The reason is, that the the virtio drivers are modules (CONFIG_VIRTIO_BLK=m) but for initrdless boot, they need to be compiled into the kernel.

Expected behavior:
Booting an arm64 image without an initrd does work in a virtualized environment similar to an amd64 image (that uses the -kvm kernel)

Tags: focal
Revision history for this message
Thomas Bechtold (toabctl) wrote :
description: updated
summary: - generic arm64 kernel can not boot initrdless
+ generic arm64 kernel can not boot initrdless and there is no -kvm kernel
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1931841

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: focal
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.