I'm trying to get 3D acceleration to work in virt-manager, but no matter what guest I use in virt-manager, if I enable 3D acceleration, I get this error.
In the details of the error, it has this:
Error starting domain: internal error: process exited while connecting to monitor: 2023-04-14T06:53:32.967256Z qemu-system-x86_64: egl: eglInitialize failed
2023-04-14T06:53:32.967390Z qemu-system-x86_64: Failed to initialize EGL render node for SPICE GL
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 72, in cb_wrapper
callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 108, in tmpcb
callback(*args, **kwargs)
File "/usr/share/virt-manager/virtManager/object/libvirtobject.py", line 57, in newfn
ret = fn(self, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/object/domain.py", line 1384, in startup
self._backend.create()
File "/usr/lib/python3/dist-packages/libvirt.py", line 1353, in create
raise libvirtError('virDomainCreate() failed')
libvirt.libvirtError: internal error: process exited while connecting to monitor: 2023-04-14T06:53:32.967256Z qemu-system-x86_64: egl: eglInitialize failed
2023-04-14T06:53:32.967390Z qemu-system-x86_64: Failed to initialize EGL render node for SPICE GL
Here are the settings I have configured for my virt-manager instance:
Video:
<video>
<model type="virtio" heads="1" primary="yes">
<acceleration accel3d="yes"/>
</model>
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x0"/>
</video>
Graphics Type:
<graphics type="spice">
<listen type="none"/>
<image compression="off"/>
<gl enable="yes" rendernode="/dev/dri/by-path/pci-0000:05:00.0-render"/>
</graphics>
What does egl: eglInitialize failed
and Failed to initialize EGL render node for SPICE GL
mean? How do I fix this error? And why does this occur? Am I missing something important?
And just to confirm, I have checked to see if I've got virtualisation enabled in GRUB with the grep CMDLINE_LINUX_DEFAULT /etc/default/grub
command, and yes I do:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt splash"
The GPU I'm using for the host machine is NVIDIA GeForce GTX 950, with the latest proprietary nvidia driver installed. And it is the only GPU I have.
I've even tried running DRI_PRIME=1 virt-manager
, but it doesn't work.
I've even looked everywhere for this error, and even looked here and here.
I've even looked here, but that solution didn't work.
How do I get 3D acceleration to work in virt-manager?