Only check for for relative path on virtio devices. Otherwise it could break driver loading in some circumstances, notably the IceCat sandbox. https://gitlab.freedesktop.org/mesa/drm/-/issues/39 Taken from upstream: https://gitlab.freedesktop.org/mesa/drm/-/commit/57df07572ce45a1b60bae6fb89770388d3abd6dd diff --git a/xf86drm.c b/xf86drm.c --- a/xf86drm.c +++ b/xf86drm.c @@ -3103,15 +3103,18 @@ static int drmParseSubsystemType(int maj, int min) int subsystem_type; snprintf(path, sizeof(path), "/sys/dev/char/%d:%d/device", maj, min); - if (!realpath(path, real_path)) - return -errno; - snprintf(path, sizeof(path), "%s", real_path); subsystem_type = get_subsystem_type(path); + /* Try to get the parent (underlying) device type */ if (subsystem_type == DRM_BUS_VIRTIO) { + /* Assume virtio-pci on error */ + if (!realpath(path, real_path)) + return DRM_BUS_VIRTIO; strncat(path, "/..", PATH_MAX); subsystem_type = get_subsystem_type(path); - } + if (subsystem_type < 0) + return DRM_BUS_VIRTIO; + } return subsystem_type; #elif defined(__OpenBSD__) || defined(__DragonFly__) || defined(__FreeBSD__) return DRM_BUS_PCI; @@ -3920,6 +3923,7 @@ process_device(drmDevicePtr *device, const char *d_name, switch (subsystem_type) { case DRM_BUS_PCI: + case DRM_BUS_VIRTIO: return drmProcessPciDevice(device, node, node_type, maj, min, fetch_deviceinfo, flags); case DRM_BUS_USB: ce26a8cba9d11de39e4ddb86987200581a86b'/>
path: root/bootstrap
AgeCommit message (Expand)Author
2021-06-13bootstrap: Simplify search for translation languages....Extend the sed script to also behave like "basename", saving the addtional call of "xargs basename". * bootstrap (langs): Extend sed scripts, remove running xargs. Hartmut Goebel
2020-02-17bootstrap: Fix typo....* bootstrap: Substitute ‘guix-cookbook’ for copy/pasted ‘guix-manual’. Reported-by: jetomit on #guix Tobias Geerinckx-Rice
2019-09-18doc: Add Guix Cookbook....* .gitignore: Update ignore list. * Makefile.am (assert-no-store-file-names): Exclude the cookbook. * bootstrap: Generate po files for cookbook translations. * doc/guix-cookbook.texi: New file. * doc/local.mk (info_TEXINFOS): Add it; add a rule to build cookbook translations. * po/doc/local.mk (DOC_COOKBOOK_PO_FILES): New variable. (EXTRA_DIST): Add cookbook pot file and po files. (doc-po-update-cookbook-%): New target. (doc-pot-update): Also update cookbook pot file. (doc-po-update): Also update cookbook po files. Ricardo Wurmus
2019-04-26bootstrap: Break automake dependency on generated files....* bootstrap: Generate stub files for the manual translations whose generated files are not included in the VCS. * doc/contributing.de.texi: Remove file. * doc/contributing.es.texi: Remove file. * doc/contributing.fr.texi: Remove file. * doc/contributing.zh_CN.texi: Remove file. * doc/guix.de.texi: Remove file. * doc/guix.es.texi: Remove file. * doc/guix.fr.texi: Remove file. * doc/guix.zh_CN.texi: Remove file. * .gitignore: Add them. Signed-off-by: Julien Lepiller <julien@lepiller.eu> Miguel Ángel Arruga Vivas