Inoculate against a versioning bug with libdrm 2.4.78
This commit is contained in:
parent
842f3bc99b
commit
0eac067d1c
38
0001-modesetting-Set-correct-DRM-event-context-version.patch
Normal file
38
0001-modesetting-Set-correct-DRM-event-context-version.patch
Normal file
@ -0,0 +1,38 @@
|
||||
From 0c8e6ed85810e96d84173a52d628863802a78d82 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Stone <daniels@collabora.com>
|
||||
Date: Fri, 7 Apr 2017 14:27:58 +0100
|
||||
Subject: [PATCH xserver] modesetting: Set correct DRM event context version
|
||||
|
||||
DRM_EVENT_CONTEXT_VERSION is the latest context version supported by
|
||||
whatever version of libdrm is present. modesetting was blindly asserting
|
||||
it supported whatever version that may be, even if it actually didn't.
|
||||
|
||||
With libdrm 2.4.78, setting a higher context version than 2 will attempt
|
||||
to call the page_flip_handler2 vfunc if it was non-NULL, which being a
|
||||
random chunk of stack memory, it might well have been.
|
||||
|
||||
Set the version as 2, which should be bumped only with the appropriate
|
||||
version checks.
|
||||
|
||||
Reviewed-by: Adam Jackson <ajax@redhat.com>
|
||||
Signed-off-by: Daniel Stone <daniels@collabora.com>
|
||||
---
|
||||
hw/xfree86/drivers/modesetting/vblank.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/xfree86/drivers/modesetting/vblank.c b/hw/xfree86/drivers/modesetting/vblank.c
|
||||
index 04a8952..8682f4d 100644
|
||||
--- a/hw/xfree86/drivers/modesetting/vblank.c
|
||||
+++ b/hw/xfree86/drivers/modesetting/vblank.c
|
||||
@@ -402,7 +402,7 @@ ms_vblank_screen_init(ScreenPtr screen)
|
||||
modesettingEntPtr ms_ent = ms_ent_priv(scrn);
|
||||
xorg_list_init(&ms_drm_queue);
|
||||
|
||||
- ms->event_context.version = DRM_EVENT_CONTEXT_VERSION;
|
||||
+ ms->event_context.version = 2;
|
||||
ms->event_context.vblank_handler = ms_drm_handler;
|
||||
ms->event_context.page_flip_handler = ms_drm_handler;
|
||||
|
||||
--
|
||||
2.9.3
|
||||
|
@ -45,7 +45,7 @@
|
||||
Summary: X.Org X11 X server
|
||||
Name: xorg-x11-server
|
||||
Version: 1.19.3
|
||||
Release: 2%{?gitdate:.%{gitdate}}%{dist}
|
||||
Release: 3%{?gitdate:.%{gitdate}}%{dist}
|
||||
URL: http://www.x.org
|
||||
License: MIT
|
||||
Group: User Interface/X
|
||||
@ -98,6 +98,8 @@ Patch20: 06_use-intel-only-on-pre-gen4.diff
|
||||
# Submitted upstream
|
||||
Patch21: 0001-xf86-dri2-Use-va_gl-as-vdpau_driver-for-Intel-i965-G.patch
|
||||
|
||||
Patch22: 0001-modesetting-Set-correct-DRM-event-context-version.patch
|
||||
|
||||
#Patch6044: xserver-1.6.99-hush-prerelease-warning.patch
|
||||
|
||||
Patch7025: 0001-Always-install-vbe-and-int10-sdk-headers.patch
|
||||
@ -600,6 +602,9 @@ find %{inst_srcdir}/hw/xfree86 -name \*.c -delete
|
||||
|
||||
|
||||
%changelog
|
||||
* Fri Apr 07 2017 Adam Jackson <ajax@redhat.com> - 1.19.3-3
|
||||
- Inoculate against a versioning bug with libdrm 2.4.78
|
||||
|
||||
* Thu Mar 23 2017 Hans de Goede <hdegoede@redhat.com> - 1.19.3-2
|
||||
- Use va_gl as vdpau driver on i965 GPUs (rhbz#1413733)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user