Booting from virtio-blk-pci on s390x is sometimes failing
## Host environment
- Operating system: Fedora 42
- Architecture: x86
- QEMU flavor: qemu-system-s390x
- QEMU version: v11.0-rc0
## Emulated/Virtualized environment
- Operating system: Linux
- OS/kernel version: e.g. Fedora 32
- Architecture: s390x
## Description of problem
Booting via virtio-blk-pci still seems to be a little bit flaky sometimes, depending on the disk image that I use, ca. 1 out of 50 boots (or 1 out of 1000 boots for other disk images) cannot load the kernel correctly.
## Steps to reproduce
1. wget https://github.com/huth/qemu-paddock/raw/refs/heads/main/s390x/f32-4k-bootmenu.raw.xz
2. unxz f32-4k-bootmenu.raw.xz
3. Run the following loop:
```
for ((x=0;x<100;x++)); do \
echo Run $x ... ; \
qemu-system-s390x -cpu qemu,zarch=off -blockdev \
driver=file,filename=f32-4k-bootmenu.raw,node-name=d1 \
-display none -serial stdio -device \
virtio-blk-pci,drive=d1,bootindex=1 > /tmp/bla.txt ; \
if ! grep -q Linux /tmp/bla.txt ; then \
echo "failed during run $x:" ; cat /tmp/bla.txt ; break; \
fi ; done
```
## Additional information
When it fails, I often see error messages like "qemu-system-s390x: Virtqueue size exceeded" on stderr.
The s390-ccw bios only prints this to the serial console:
```
LOADPARM=[ ]
Using virtio-blk.
Using guessed DASD geometry.
Using ECKD scheme (block size 4096), CDL
VOLSER=[0X5100]
```
Looks like the kernel is not even started in this case (or dies before it prints the first message to the console).
issue