Bug 2091964

Summary: virtio-gpu-ccw not available
Product: [Fedora] Fedora Reporter: Dan Horák <dan>
Component: qemuAssignee: Fedora Virtualization Maintainers <virt-maint>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: berrange, cfergeau, crobinso, ondrejj, pbonzini, philmd, rjones, virt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: s390x   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-06-06 12:49:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 467765    

Description Dan Horák 2022-05-31 12:19:52 UTC
Description of problem:
When trying to install Fedora with graphics console enabled, qemu fails with an error.

[sharkcz@rock-kvmlp-fedora ~]$ virt-install --virt-type kvm --name graphical --ram 2048 --disk /var/lib/libvirt/images/graphical.qcow2,format=qcow2,size=10 --graphics vnc,listen=0.0.0.0 --noautoconsole --location=/var/lib/libvirt/images/Fedora-Server-dvd-s390x-Rawhide-20220530.n.0.iso

Starting install...
Retrieving 'kernel.img'                                                                                                                                                |    0 B  00:00:00 ... 
Retrieving 'initrd.img'                                                                                                                                                |    0 B  00:00:00 ... 
Allocating 'virtinst-_doltwxc-kernel.img'                                                                                                                              |    0 B  00:00:00 ... 
Transferring 'virtinst-_doltwxc-kernel.img'                                                                                                                            |    0 B  00:00:00 ... 
Allocating 'virtinst-vqw4u2_g-initrd.img'                                                                                                                              |    0 B  00:00:00 ... 
Transferring 'virtinst-vqw4u2_g-initrd.img'                                                                                                                            |    0 B  00:00:00 ... 
Allocating 'graphical.qcow2'                                                                                                                                           |    0 B  00:00:00 ... 
Removing disk 'graphical.qcow2'                                                                                                                                        |    0 B  00:00:00     
ERROR    internal error: qemu unexpectedly closed the monitor: 2022-05-31T12:15:38.600925Z qemu-system-s390x: -device {"driver":"virtio-gpu-ccw","id":"video0","max_outputs":1,"devno":"fe.0.0002"}: 'virtio-gpu-ccw' is not a valid device model name
Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
  virsh --connect qemu:///system start graphical
otherwise, please restart your installation.


When querying qemu about available gpu devices, it doesn't contain the "ccw" variant.

[sharkcz@rock-kvmlp-fedora ~]$ qemu-system-s390x -device "?" | grep gpu
Failed to open module: /usr/bin/../lib64/qemu/hw-display-virtio-vga.so: undefined symbol: vmstate_vga_common
Failed to open module: /usr/bin/../lib64/qemu/hw-display-virtio-vga.so: undefined symbol: vmstate_vga_common
Failed to open module: /usr/bin/../lib64/qemu/hw-display-virtio-vga-gl.so: undefined symbol: have_vga
Failed to open module: /usr/bin/../lib64/qemu/hw-usb-smartcard.so: undefined symbol: ccid_card_ccid_attach
Failed to open module: /usr/bin/../lib64/qemu/hw-usb-redirect.so: undefined symbol: vmstate_usb_device
Failed to open module: /usr/bin/../lib64/qemu/hw-usb-host.so: undefined symbol: vmstate_usb_device
name "vhost-user-gpu", bus virtio-bus
name "vhost-user-gpu-pci", bus PCI
name "virtio-gpu-device", bus virtio-bus
name "virtio-gpu-gl-device", bus virtio-bus
name "virtio-gpu-gl-pci", bus PCI
name "virtio-gpu-pci", bus PCI


Version-Release number of selected component (if applicable):
qemu-system-s390x-7.0.0-3.fc36.s390x
virt-install-4.0.0-1.fc36.noarch

This is on F-36 with the virt-preview repo enabled.

Comment 1 Richard W.M. Jones 2022-05-31 13:08:22 UTC
I'm unclear, is this package installed?

qemu-device-display-virtio-gpu-ccw

This could be to do with how qemu is modularised these days, although
I'm not very familiar with it.

Comment 2 Dan Horák 2022-05-31 13:15:56 UTC
(In reply to Richard W.M. Jones from comment #1)
> I'm unclear, is this package installed?
> 
> qemu-device-display-virtio-gpu-ccw
> 
> This could be to do with how qemu is modularised these days, although
> I'm not very familiar with it.

it was not installed, things work as expected after installing it :-) Thanks for the hint.

Comment 3 Dan Horák 2022-05-31 14:38:07 UTC
I think qemu-system-s390x should Require: qemu-device-display-virtio-gpu-ccw similar to what it already does for other gpu drivers ...

Comment 4 Daniel Berrangé 2022-06-06 12:49:11 UTC
This was addressed in

commit a575c5e3467889633a268b6f2608aa12596fa5ed
Author: Cole Robinson <crobinso>
Date:   Thu Jun 2 10:45:19 2022 -0400

    qemu-7.0.0-4
    
    Fix virtio-scsi hang (bz #2079347)
    Add dep on virtio-gpu-ccw (bz #2091964)