Bug 1652871

Summary: QEMU doesn't expose rendernode option for egl-headless display type
Product: Red Hat Enterprise Linux 8 Reporter: Erik Skultety <eskultet>
Component: qemu-kvmAssignee: Gerd Hoffmann <kraxel>
qemu-kvm sub component: Graphics QA Contact: Guo, Zhiyi <zhguo>
Status: CLOSED CURRENTRELEASE Docs Contact:
Severity: medium    
Priority: medium CC: areis, chayang, coli, ddepaula, eskultet, jinzhao, juzhang, knoel, kraxel, rbalakri, virt-bugs, virt-maint, wchadwic, zhguo
Version: 8.0Keywords: Reopened, TestOnly, Triaged
Target Milestone: rc   
Target Release: 8.3   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-4.2.0-30.module+el8.3.0+7298+c26a06b8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1648236
: 1671594 (view as bug list) Environment:
Last Closed: 2021-03-25 03:55:24 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: commit in BZ comment 25
Embargoed:
Bug Depends On: 1648236, 1810193    
Bug Blocks: 1528681, 1628892, 1671594    

Description Erik Skultety 2018-11-23 11:20:21 UTC
+++ This bug was initially created as a clone of Bug #1648236 +++

Description of problem:
It's not possible to specify rendernode with egl-headless compared to spice which means that QEMU will always pick the first render node available, which will never work with libvirt namespaces, because libvirt doesn't know which DRM node to put into the namespace which will inherently result in a failure to start a VM.

Version-Release number of selected component (if applicable):
qemu-kvm-rhev-2.12.0-14.el7.x86_64

How reproducible:

Steps to Reproduce:
1. 
2.
3.

Actual results:


Expected results:
QEMU accepts rendernode option for egl-headless display type so that libvirt can take care of the access rights.

Additional info:
See https://bugzilla.redhat.com/show_bug.cgi?id=1628892 for more detail and how to reproduce. Even though libvirt now lets QEMU to pick the rendernode for SPICE if the user didn't provide it, this will change due to namespaces and libvirt will pick the first available rendernode the same way QEMU has been doing it.

Comment 5 Gerd Hoffmann 2018-12-14 07:09:08 UTC
Also: 91e61947eb2be21b00091d34f5692f89cef41376

Comment 7 Danilo de Paula 2018-12-14 13:07:43 UTC
QA_ACK please?

Comment 11 Danilo de Paula 2019-01-08 14:09:39 UTC
Fix included in qemu-kvm-2.12.0-53.module+el8+2633+7c32f5a1

Comment 28 Ademar Reis 2020-02-05 22:51:46 UTC
QEMU has been recently split into sub-components and as a one-time operation to avoid breakage of tools, we are setting the QEMU sub-component of this BZ to "General". Please review and change the sub-component if necessary the next time you review this BZ. Thanks

Comment 34 Guo, Zhiyi 2020-07-28 01:22:06 UTC
Test agasint qemu-kvm-4.2.0-31.module+el8.3.0+7437+4bb96e0d.x86_64

qemu can start with rendernode withtout error:
# /usr/libexec/qemu-kvm -display egl-headless,rendernode=/dev/dri/renderD128 -monitor stdio
QEMU 4.2.0 monitor - type 'help' for more information
(qemu) 

Boot rhel8.3 VM with intel vGPU, I can see VM desktop correctly.

Mark as verified