1 |
Author: mpagano |
2 |
Date: 2010-09-29 14:29:52 +0000 (Wed, 29 Sep 2010) |
3 |
New Revision: 1803 |
4 |
|
5 |
Added: |
6 |
genpatches-2.6/trunk/2.6.35/2700_drm-fix-unbinding-framebuffer-race-cond.patch |
7 |
Modified: |
8 |
genpatches-2.6/trunk/2.6.35/0000_README |
9 |
Log: |
10 |
Fix race cond. between unbinding a fb on a hotplug event and user space flip |
11 |
|
12 |
Modified: genpatches-2.6/trunk/2.6.35/0000_README |
13 |
=================================================================== |
14 |
--- genpatches-2.6/trunk/2.6.35/0000_README 2010-09-29 12:52:11 UTC (rev 1802) |
15 |
+++ genpatches-2.6/trunk/2.6.35/0000_README 2010-09-29 14:29:52 UTC (rev 1803) |
16 |
@@ -71,6 +71,10 @@ |
17 |
From: http://bugs.gentoo.org/show_bug.cgi?id=318365 |
18 |
Desc: create /sys/fs/cgroup to mount cgroupfs to support systemd |
19 |
|
20 |
+Patch: 2700_drm-fix-unbinding-framebuffer-race-cond.patch |
21 |
+From: http://bugs.gentoo.org/show_bug.cgi?id=336701 |
22 |
+Desc: Fix race cond. between unbinding a fb on a hotplug event and user space flip |
23 |
+ |
24 |
Patch: 2900_xconfig-with-qt4.patch |
25 |
From: http://bugs.gentoo.org/show_bug.cgi?id=320761 |
26 |
Desc: xconfig patch for qt4 - thanks to Sam Iam |
27 |
|
28 |
Added: genpatches-2.6/trunk/2.6.35/2700_drm-fix-unbinding-framebuffer-race-cond.patch |
29 |
=================================================================== |
30 |
--- genpatches-2.6/trunk/2.6.35/2700_drm-fix-unbinding-framebuffer-race-cond.patch (rev 0) |
31 |
+++ genpatches-2.6/trunk/2.6.35/2700_drm-fix-unbinding-framebuffer-race-cond.patch 2010-09-29 14:29:52 UTC (rev 1803) |
32 |
@@ -0,0 +1,18 @@ |
33 |
+--- a/drivers/gpu/drm/drm_crtc.c 2010-09-29 10:10:59.000000000 -0400 |
34 |
++++ b/drivers/gpu/drm/drm_crtc.c 2010-09-29 10:12:56.000000000 -0400 |
35 |
+@@ -2609,6 +2609,15 @@ int drm_mode_page_flip_ioctl(struct drm_ |
36 |
+ if (!obj) |
37 |
+ goto out; |
38 |
+ crtc = obj_to_crtc(obj); |
39 |
++ |
40 |
++ if (crtc->fb == NULL) { |
41 |
++ /* The framebuffer is currently unbound, presumably |
42 |
++ * due to a hotplug event, that userspace has not |
43 |
++ * yet discovered. |
44 |
++ */ |
45 |
++ ret = -EBUSY; |
46 |
++ goto out; |
47 |
++ } |
48 |
+ |
49 |
+ if (crtc->funcs->page_flip == NULL) |
50 |
+ goto out; |