diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2017-05-23 17:43:36 +0200 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2017-05-23 17:43:36 +0200 |
commit | 7a101754756b138e6f670e7b116d517efca4eff0 (patch) | |
tree | 2308a22c17e9dd37677298413849291c608c2006 /main/xorg-server | |
parent | f8b617ef1b077d41b1f60d52d1eae2a4ad024df8 (diff) | |
download | aports-7a101754756b138e6f670e7b116d517efca4eff0.tar.bz2 aports-7a101754756b138e6f670e7b116d517efca4eff0.tar.xz |
main/xorg-server: add patch for modesetting
Diffstat (limited to 'main/xorg-server')
-rw-r--r-- | main/xorg-server/APKBUILD | 4 | ||||
-rw-r--r-- | main/xorg-server/modesetting-Set-correct-DRM-event-context-version.patch | 38 |
2 files changed, 41 insertions, 1 deletions
diff --git a/main/xorg-server/APKBUILD b/main/xorg-server/APKBUILD index 4defc2fbbc..f3923111a1 100644 --- a/main/xorg-server/APKBUILD +++ b/main/xorg-server/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=xorg-server pkgver=1.19.3 -pkgrel=1 +pkgrel=2 pkgdesc="X.Org X servers" url="http://xorg.freedesktop.org" arch="all" @@ -81,6 +81,7 @@ source="http://xorg.freedesktop.org/releases/individual/xserver/$pkgname-$pkgver autoconfig-nvidia.patch autoconfig-sis.patch fix-musl-arm.patch + modesetting-Set-correct-DRM-event-context-version.patch 20-modules.conf " @@ -194,4 +195,5 @@ sha512sums="b988897418399e1361fdcca9465a781f55f8f6fbfdc5a59edfaee9046a0c6ad7a76f 4dcaa60fbfc61636e7220a24a72bba19984a6dc752061cb40b1bd566c0e614d08927b6c223ffaaaa05636765fddacdc3113fde55d25fd09cd0c786ff44f51447 autoconfig-nvidia.patch 30a78f4278edd535c45ee3f80933427cb029a13abaa4b041f816515fdd8f64f00b9c6aef50d4eba2aaf0d4f333e730399864fd97fa18891273601c77a6637200 autoconfig-sis.patch b799e757a22a61ac283adbd7a8df1ad4eccce0bb6cac38a0c962ba8438bba3cf6637a65bb64859e7b32399fca672283a49960207e186c271ba574580de360d09 fix-musl-arm.patch +f66f11255aa8a98c89763cb213f08628c937cb13e7ab4bd399a246e0b630316343f35e191d92e55b0fa68e601c243220a3258bbfc5d50e74ccadfe6cb27310f5 modesetting-Set-correct-DRM-event-context-version.patch 95036f2452732cc31f6b646da9f46b7be30f4c9392724386b02f67fece1f506b00e15d14cbd8cf0ce75ca1fd144b4bea7e59288d4aaf4d6c1e06e5168931eb67 20-modules.conf" diff --git a/main/xorg-server/modesetting-Set-correct-DRM-event-context-version.patch b/main/xorg-server/modesetting-Set-correct-DRM-event-context-version.patch new file mode 100644 index 0000000000..51563fec59 --- /dev/null +++ b/main/xorg-server/modesetting-Set-correct-DRM-event-context-version.patch @@ -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] 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.12.2 + |