I followed the how-to guide provided by Will and achieved to boot into debian with a standard 4.19 kernel.
Loading Linux 4.19.0-10-arm64 ...
Loading initial ramdisk ...
/dev/vda2: recovering journal
/dev/vda2: clean, 30993/987360 files, 321051/3943936 blocks
Debian GNU/Linux 10 qemu ttyAMA0
qemu login: (works)
qemu-system-aarch64 -M virt \
-machine virtualization=true -machine virt,gic-version=3 \
-cpu max,sve=off -smp 2 -m 512 \
-kernel /root/Image \
-append "earlycon root=/dev/vda2" \
-drive if=pflash,format=raw,file=efi.img,readonly \
-drive if=pflash,format=raw,file=varstore.img \
-drive if=virtio,format=qcow2,file=disk.img \
-device virtio-scsi-pci,id=scsi0 \
-object rng-random,filename=/dev/urandom,id=rng0 \
-device virtio-rng-pci,rng=rng0 \
-device virtio-net-pci,netdev=net0 \
-netdev user,id=net0,hostfwd=tcp::8022-:22 \
-nographic
When I try to use my already compiled kernel (yes, I checked for ext4 support) as shown in the syzkaller docs or in the guide sent by Will, I get the same issue just like before, the kernel panics without having a root device to mount:
[ 15.226144] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
[ 15.226825] Please append a correct "root=" boot option; here are the available partitions:
[ 15.228423] fe00 16777216 vda
[ 15.228575] driver: virtio_blk
[ 15.230558] fe01 524288 vda1 9af40d4f-b7a0-499b-b89c-5c3d6a209eda
[ 15.230655]
[ 15.231690] fe02 15775744 vda2 77c94b83-2ee4-4fb9-bc4c-9b6ed213db51
[ 15.231755]
[ 15.232793] fe03 475136 vda3 29a69162-100c-4a91-9a1b-88abdb28c555
[ 15.233635]
[ 15.235592] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
I tried vda1, vda2, vda3, also with prepended /dev/, won't work. So the issue is probably the custom kernel, here's my config file:
https://pastebin.com/raw/HS53tEi2
Dmitry once said it might be lacking ext fs driver, but I see that options CONFIG_EXT2..4_FS are set.