As I've expected above - the modern default of QXL (that any higher level software usually would use) works fine.
I was trying other backends: vga, vmvga, virtio also all just work fine.
The reason why your stripped down qemu commandline works is because qemu has switched the defaults.
Since qemu 2.2 your default will be vga (called std for qemu). Therefore since you had no '-device cirrus-vga,...' your manual command worked for you.
If you append '-device cirrus-vga,id=video0,bus=pci.0,addr=0x3' it fails just the same.
Also the error seems to be at the bootloader or at least early-boot, not the later stages.
While there might be an issue in kernel or grub in the guest that is triggered here - it seems that some fix went into cirrus emulation to avoid that issue. So it can be fixed at the host level.
So the question is what is breaking the cirrus video device and what/how was it fixed later.
As I've expected above - the modern default of QXL (that any higher level software usually would use) works fine.
I was trying other backends: vga, vmvga, virtio also all just work fine.
The reason why your stripped down qemu commandline works is because qemu has switched the defaults. vga,id= video0, bus=pci. 0,addr= 0x3' it fails just the same.
Since qemu 2.2 your default will be vga (called std for qemu). Therefore since you had no '-device cirrus-vga,...' your manual command worked for you.
If you append '-device cirrus-
Also the error seems to be at the bootloader or at least early-boot, not the later stages.
While there might be an issue in kernel or grub in the guest that is triggered here - it seems that some fix went into cirrus emulation to avoid that issue. So it can be fixed at the host level.
So the question is what is breaking the cirrus video device and what/how was it fixed later.