[Bug 107309] libGL error: MESA-LOADER: failed to retrieve device information on virgl
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Fri Jul 20 13:28:52 UTC 2018
https://bugs.freedesktop.org/show_bug.cgi?id=107309
Bug ID: 107309
Summary: libGL error: MESA-LOADER: failed to retrieve device
information on virgl
Product: DRI
Version: XOrg git
Hardware: Other
OS: All
Status: NEW
Severity: normal
Priority: medium
Component: libdrm
Assignee: dri-devel at lists.freedesktop.org
Reporter: vliaskovitis at suse.com
Created attachment 140732
--> https://bugs.freedesktop.org/attachment.cgi?id=140732&action=edit
xf86drm: Correctly parse pci device information for virtio gpu
Mesa 18.1.3-201.1
kernel 4.17.5-1-default
libdrm 2.4.92-1.2
glxinfo | grep -i renderer
OpenGL renderer string: virgl
LIBGL_DEBUG=verbose glxgears
libGL error: MESA-LOADER: failed to retrieve device information
libGL: using driver virtio_gpu for 4
libGL: OpenDriver: trying /usr/lib64/dri/tls/virtio_gpu_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/virtio_gpu_dri.so
Adding some debug drmMsg() prints, I found that the MESA-LOADER error message
happens because drmGetDevice2() returns -ENODEV. And that happens because
drmParseSubsystemType() returns -EINVAL.
drmParseSubsystemType() expects /sys/dev/char/DRM_MAJOR\:0/device/subsystem to
be one of pci, usb, platform, hostix. But virtio-gpu has bus subsystem virtio:
ls -al /sys/dev/char/226\:0/device/subsystem
lrwxrwxrwx 1 root root 0 Jul 19 17:39 /sys/dev/char/226:0/device/subsystem ->
../../../../bus/virtio
ls -al /sys/dev/char/226\:128/device/subsystem
lrwxrwxrwx 1 root root 0 Jul 19 17:39 /sys/dev/char/226:128/device/subsystem ->
../../../../bus/virtio
I am not sure if this is a cosmetic error, or if it matters. I am attaching a
proposed patch.
Since the virtio-gpu device is actually a pci device, we can still parse the
correct information from the corresponding pci device:
ls -al /sys/dev/char/226\:0
lrwxrwxrwx 1 root root 0 Jul 20 13:30 /sys/dev/char/226:0 ->
../../devices/pci0000:00/0000:00:02.0/virtio0/drm/card0
i.e. use /sys/dev/char/226\:128/../../../ instead of /sys/dev/char/226\:128/
for virtio devices.
to parse subsystem, and subsequently pci bus and pci device information.
(Let me know if bugzilla is still the place to report bugs, or if
https://gitlab.freedesktop.org/mesa/drm is now the preferred location)
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20180720/8bd9c46a/attachment.html>
More information about the dri-devel
mailing list