diff options
author | Guillaume Le Vaillant <[email protected]> | 2020-09-23 14:50:19 +0200 |
---|---|---|
committer | Guillaume Le Vaillant <[email protected]> | 2020-09-23 14:50:19 +0200 |
commit | 23744435613aa040beacc61a0825cc72280da80a (patch) | |
tree | 8bdff27c5b3dc088d923e91a14a38f6a6b9fa661 /gnu/packages/patches/libdrm-realpath-virtio.patch | |
parent | 0057027f81a7efed76f9bd983bc827ae1b66d9cf (diff) | |
parent | 7e463dd16b7e273011f0beafa57a89fa2d525f8b (diff) |
Merge branch 'staging' into wip-lisp
Diffstat (limited to 'gnu/packages/patches/libdrm-realpath-virtio.patch')
-rw-r--r-- | gnu/packages/patches/libdrm-realpath-virtio.patch | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/gnu/packages/patches/libdrm-realpath-virtio.patch b/gnu/packages/patches/libdrm-realpath-virtio.patch deleted file mode 100644 index b7d85160b4..0000000000 --- a/gnu/packages/patches/libdrm-realpath-virtio.patch +++ /dev/null @@ -1,42 +0,0 @@ -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: |