Bug 1654889

Summary: [RFE] Support console VNC for mediated devices
Product: Red Hat Enterprise Virtualization Manager Reporter: Ryan Barry <rbarry>
Component: ovirt-engineAssignee: Tomasz Barański <tbaransk>
Status: CLOSED ERRATA QA Contact: Nisim Simsolo <nsimsolo>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 4.4.0CC: amarchuk, bugzilla-qe-rhv, michal.skrivanek, mtessun, nsimsolo
Target Milestone: ovirt-4.4.0Keywords: FutureFeature, ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ovirt-engine-4.3.3.1 Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of:
: 1723580 (view as bug list) Environment:
Last Closed: 2020-08-04 13:16:18 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Virt RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1475770    
Bug Blocks: 1723580    
Attachments:
Description Flags
screenshot of qemu proccesses diff (the failed one is with cirrus)
none
vdsm.log.xz
none
engine.log.xz
none
qemu process when VNC is working
none
qemu process when VNC failed to display VM none

Description Ryan Barry 2018-11-29 23:19:00 UTC
Description of problem:
Platform supports direct VNC passthrough for vGPU -- see https://bugzilla.redhat.com/show_bug.cgi?id=1475770

In order to support this in RHV, a new display type must be added which users can configure after drivers are installed in the guest, which removes QXL and allows a direct mapping to the vGPU

qemu-cmdline argument should be enough.

Comment 4 RHV bug bot 2019-03-29 11:14:39 UTC
WARN: Bug status wasn't changed from MODIFIED to ON_QA due to the following reason:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops: Bug status wasn't changed from MODIFIED to ON_QA due to the following reason:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops

Comment 9 Nisim Simsolo 2019-05-23 13:03:24 UTC
Reassigned. 
- VNC is showing display only on the first run of the VM. after powering off and running the VM again, the VNC display freezes before the VM completely booted.
- Running diff of VM qemu process shows that when there is no VNC display, there is  cirrus-vga device that was added (please see diff.png file attached).
and also inside the VM there is Cirrus VGA controller:
00:05.0 VGA compatible controller [0300]: Cirrus Logic GD 5446 [1013:00b8]
	Subsystem: Red Hat, Inc. QEMU Virtual Machine [1af4:1100]
	Kernel driver in use: cirrus
	Kernel modules: cirrus
- Possible workaround for this issue, it to edit VM -> Console and change video type from QXL to VGA or vice versa.

qemu proccess files for diff, vdsm.log and engine.log attached.

Comment 10 Nisim Simsolo 2019-05-23 13:06:57 UTC
Created attachment 1572507 [details]
screenshot of qemu proccesses diff  (the failed one is with cirrus)

Comment 11 Nisim Simsolo 2019-05-23 13:07:30 UTC
Created attachment 1572521 [details]
vdsm.log.xz

Comment 12 Nisim Simsolo 2019-05-23 13:07:49 UTC
Created attachment 1572522 [details]
engine.log.xz

Comment 13 Nisim Simsolo 2019-05-23 13:09:06 UTC
Created attachment 1572523 [details]
qemu process when VNC is working

Comment 14 Nisim Simsolo 2019-05-23 13:09:44 UTC
Created attachment 1572524 [details]
qemu process when VNC failed to display VM

Comment 15 Nisim Simsolo 2019-05-23 13:18:01 UTC
Another thing, when using virt-viewer or virt-manager the mouse cursor is invisible although mouse is present (windows are highlighted and mouse clicks are working).
using TigerVNC mouse cursor is visible.
Please see RHEL7 bug: https://bugzilla.redhat.com/show_bug.cgi?id=1620204

Comment 16 Tomasz Barański 2019-05-31 14:21:38 UTC
(In reply to Nisim Simsolo from comment #9)
> Reassigned. 
> - Running diff of VM qemu process shows that when there is no VNC display,
> there is  cirrus-vga device that was added (please see diff.png file
> attached).
> and also inside the VM there is Cirrus VGA controller:
> 00:05.0 VGA compatible controller [0300]: Cirrus Logic GD 5446 [1013:00b8]
> 	Subsystem: Red Hat, Inc. QEMU Virtual Machine [1af4:1100]
> 	Kernel driver in use: cirrus
> 	Kernel modules: cirrus
> - Possible workaround for this issue, it to edit VM -> Console and change
> video type from QXL to VGA or vice versa.

Found the reason behind it. On the first run, the XML contains no <video> tag but contains <graphics> element for VNC. Libvirt's doc says, that:

    For backwards compatibility, if no video is set but there is a graphics in domain xml, then libvirt will add a default video according to the guest type.
    For a guest of type "kvm", the default video is: type with value "cirrus", vram with value "16384" and heads with value "1".

I can add a quick fix (detect that we have graphics but no video, then add <video> with type none if appropriate) if we're pressed for time, but I'd rather find the root cause (why there isn't a video element at all).

Comment 21 Nisim Simsolo 2019-07-22 11:02:50 UTC
Verified upstream: 
ovirt-engine-4.4.0-0.0.master.20190717001451.git71c46fc.el7
vdsm-4.40.0-472.git7714057.el7.x86_64
libvirt-4.5.0-10.el7_6.12.x86_64
2 X Nvidia Tesla M60 under the same host, drivers:  GRID 9.0 GA

Verification scenario:
Polarion test case added to external trackers.

Comment 23 Nisim Simsolo 2019-09-23 10:35:35 UTC
Verified:
ovirt-engine-4.4.0-0.0.master.20190910103859.git07162a4.el7
libvirt-daemon-4.5.0-23.el7_7.1.x86_64
vdsm-4.40.0-907.gitdb55522.el7.x86_64
qemu-kvm-ev-2.12.0-33.1.el7.x86_64
2 X Nvidia Tesla M60 under the same host, drivers:  GRID 9.1 GA

Verification scenario:
Polarion test case added to external trackers.

Comment 25 RHV bug bot 2019-12-13 13:14:34 UTC
WARN: Bug status (VERIFIED) wasn't changed but the folowing should be fixed:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops: Bug status (VERIFIED) wasn't changed but the folowing should be fixed:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops

Comment 26 RHV bug bot 2019-12-20 17:44:24 UTC
WARN: Bug status (VERIFIED) wasn't changed but the folowing should be fixed:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops: Bug status (VERIFIED) wasn't changed but the folowing should be fixed:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops

Comment 27 RHV bug bot 2020-01-08 14:46:53 UTC
WARN: Bug status (VERIFIED) wasn't changed but the folowing should be fixed:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops: Bug status (VERIFIED) wasn't changed but the folowing should be fixed:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops

Comment 28 RHV bug bot 2020-01-08 15:15:33 UTC
WARN: Bug status (VERIFIED) wasn't changed but the folowing should be fixed:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops: Bug status (VERIFIED) wasn't changed but the folowing should be fixed:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops

Comment 29 RHV bug bot 2020-01-24 19:48:39 UTC
WARN: Bug status (VERIFIED) wasn't changed but the folowing should be fixed:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops: Bug status (VERIFIED) wasn't changed but the folowing should be fixed:

[Found non-acked flags: '{}', ]

For more info please contact: rhv-devops

Comment 31 errata-xmlrpc 2020-08-04 13:16:18 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Important: RHV Manager (ovirt-engine) 4.4 security, bug fix, and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2020:3247