1 |
remi 09/04/30 11:53:47 |
2 |
|
3 |
Added: |
4 |
2.4.9-0004-intel-NULL-fake-bo-block-when-freeing-in-evict_all.patch |
5 |
2.4.9-0002-nouveau-write-posting-got-lost-somewhere-bring-it.patch |
6 |
2.4.9-0001-nouveau-store-bo-handle-in-public-struct-in-bo_ref_.patch |
7 |
2.4.9-0003-libdrm-mode-align-subpixel-results.patch |
8 |
Log: |
9 |
x11-libs/libdrm: bump to 2.4.9 with patches from master |
10 |
(Portage version: 2.2_rc31/cvs/Linux x86_64) |
11 |
|
12 |
Revision Changes Path |
13 |
1.1 x11-libs/libdrm/files/2.4.9-0004-intel-NULL-fake-bo-block-when-freeing-in-evict_all.patch |
14 |
|
15 |
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-libs/libdrm/files/2.4.9-0004-intel-NULL-fake-bo-block-when-freeing-in-evict_all.patch?rev=1.1&view=markup |
16 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-libs/libdrm/files/2.4.9-0004-intel-NULL-fake-bo-block-when-freeing-in-evict_all.patch?rev=1.1&content-type=text/plain |
17 |
|
18 |
Index: 2.4.9-0004-intel-NULL-fake-bo-block-when-freeing-in-evict_all.patch |
19 |
=================================================================== |
20 |
From 11b60973bca1bc9bbda44be4c695e22d28d8ca4a Mon Sep 17 00:00:00 2001 |
21 |
From: Jesse Barnes <jbarnes@××××××××××××.org> |
22 |
Date: Tue, 21 Apr 2009 17:13:16 -0700 |
23 |
Subject: [PATCH 4/4] intel: NULL fake bo block when freeing in evict_all |
24 |
|
25 |
Fixes assertion failures on later use of the object. |
26 |
--- |
27 |
libdrm/intel/intel_bufmgr_fake.c | 2 ++ |
28 |
1 files changed, 2 insertions(+), 0 deletions(-) |
29 |
|
30 |
diff --git a/libdrm/intel/intel_bufmgr_fake.c b/libdrm/intel/intel_bufmgr_fake.c |
31 |
index e1f98d6..969c03d 100644 |
32 |
--- a/libdrm/intel/intel_bufmgr_fake.c |
33 |
+++ b/libdrm/intel/intel_bufmgr_fake.c |
34 |
@@ -1467,8 +1467,10 @@ drm_intel_bufmgr_fake_evict_all(drm_intel_bufmgr *bufmgr) |
35 |
assert(DRMLISTEMPTY(&bufmgr_fake->on_hardware)); |
36 |
|
37 |
DRMLISTFOREACHSAFE(block, tmp, &bufmgr_fake->lru) { |
38 |
+ drm_intel_bo_fake *bo_fake = (drm_intel_bo_fake *)block->bo; |
39 |
/* Releases the memory, and memcpys dirty contents out if necessary. */ |
40 |
free_block(bufmgr_fake, block, 0); |
41 |
+ bo_fake->block = NULL; |
42 |
} |
43 |
|
44 |
pthread_mutex_unlock(&bufmgr_fake->lock); |
45 |
-- |
46 |
1.6.2.3 |
47 |
|
48 |
|
49 |
|
50 |
|
51 |
1.1 x11-libs/libdrm/files/2.4.9-0002-nouveau-write-posting-got-lost-somewhere-bring-it.patch |
52 |
|
53 |
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-libs/libdrm/files/2.4.9-0002-nouveau-write-posting-got-lost-somewhere-bring-it.patch?rev=1.1&view=markup |
54 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-libs/libdrm/files/2.4.9-0002-nouveau-write-posting-got-lost-somewhere-bring-it.patch?rev=1.1&content-type=text/plain |
55 |
|
56 |
Index: 2.4.9-0002-nouveau-write-posting-got-lost-somewhere-bring-it.patch |
57 |
=================================================================== |
58 |
From a1e3ab9e55047c08a4006ec389c1a99b72bc672c Mon Sep 17 00:00:00 2001 |
59 |
From: Ben Skeggs <bskeggs@××××××.com> |
60 |
Date: Fri, 17 Apr 2009 09:29:19 +1000 |
61 |
Subject: [PATCH 2/4] nouveau: write posting got lost somewhere, bring it back |
62 |
|
63 |
--- |
64 |
libdrm/nouveau/nouveau_dma.c | 1 + |
65 |
1 files changed, 1 insertions(+), 0 deletions(-) |
66 |
|
67 |
diff --git a/libdrm/nouveau/nouveau_dma.c b/libdrm/nouveau/nouveau_dma.c |
68 |
index 23da64b..b084f70 100644 |
69 |
--- a/libdrm/nouveau/nouveau_dma.c |
70 |
+++ b/libdrm/nouveau/nouveau_dma.c |
71 |
@@ -41,6 +41,7 @@ WRITE_PUT(struct nouveau_channel_priv *nvchan, uint32_t val) |
72 |
volatile int dum; |
73 |
|
74 |
NOUVEAU_DMA_BARRIER; |
75 |
+ dum = nvchan->pushbuf[0]; |
76 |
dum = READ_GET(nvchan); |
77 |
|
78 |
*nvchan->put = put; |
79 |
-- |
80 |
1.6.2.3 |
81 |
|
82 |
|
83 |
|
84 |
|
85 |
1.1 x11-libs/libdrm/files/2.4.9-0001-nouveau-store-bo-handle-in-public-struct-in-bo_ref_.patch |
86 |
|
87 |
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-libs/libdrm/files/2.4.9-0001-nouveau-store-bo-handle-in-public-struct-in-bo_ref_.patch?rev=1.1&view=markup |
88 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-libs/libdrm/files/2.4.9-0001-nouveau-store-bo-handle-in-public-struct-in-bo_ref_.patch?rev=1.1&content-type=text/plain |
89 |
|
90 |
Index: 2.4.9-0001-nouveau-store-bo-handle-in-public-struct-in-bo_ref_.patch |
91 |
=================================================================== |
92 |
From 78e753d03314e3aa92af8ec601e9dbb869a938d5 Mon Sep 17 00:00:00 2001 |
93 |
From: Ben Skeggs <bskeggs@××××××.com> |
94 |
Date: Wed, 15 Apr 2009 12:44:21 +1000 |
95 |
Subject: [PATCH 1/4] nouveau: store bo handle in public struct in bo_ref_handle |
96 |
|
97 |
--- |
98 |
libdrm/nouveau/nouveau_bo.c | 3 ++- |
99 |
1 files changed, 2 insertions(+), 1 deletions(-) |
100 |
|
101 |
diff --git a/libdrm/nouveau/nouveau_bo.c b/libdrm/nouveau/nouveau_bo.c |
102 |
index 023c6be..66466e3 100644 |
103 |
--- a/libdrm/nouveau/nouveau_bo.c |
104 |
+++ b/libdrm/nouveau/nouveau_bo.c |
105 |
@@ -404,7 +404,8 @@ nouveau_bo_handle_ref(struct nouveau_device *dev, uint32_t handle, |
106 |
nvbo->size = req.size; |
107 |
nvbo->handle = req.handle; |
108 |
} |
109 |
- |
110 |
+ |
111 |
+ nvbo->base.handle = nvbo->handle; |
112 |
return 0; |
113 |
} |
114 |
|
115 |
-- |
116 |
1.6.2.3 |
117 |
|
118 |
|
119 |
|
120 |
|
121 |
1.1 x11-libs/libdrm/files/2.4.9-0003-libdrm-mode-align-subpixel-results.patch |
122 |
|
123 |
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-libs/libdrm/files/2.4.9-0003-libdrm-mode-align-subpixel-results.patch?rev=1.1&view=markup |
124 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-libs/libdrm/files/2.4.9-0003-libdrm-mode-align-subpixel-results.patch?rev=1.1&content-type=text/plain |
125 |
|
126 |
Index: 2.4.9-0003-libdrm-mode-align-subpixel-results.patch |
127 |
=================================================================== |
128 |
From 412d370b9ae4b2882691863a1c5e13a507574e92 Mon Sep 17 00:00:00 2001 |
129 |
From: Dave Airlie <airlied@×××××.ie> |
130 |
Date: Wed, 22 Apr 2009 20:25:40 +1000 |
131 |
Subject: [PATCH 3/4] libdrm/mode: align subpixel results |
132 |
|
133 |
--- |
134 |
libdrm/xf86drmMode.c | 3 ++- |
135 |
1 files changed, 2 insertions(+), 1 deletions(-) |
136 |
|
137 |
diff --git a/libdrm/xf86drmMode.c b/libdrm/xf86drmMode.c |
138 |
index 872604f..ea11207 100644 |
139 |
--- a/libdrm/xf86drmMode.c |
140 |
+++ b/libdrm/xf86drmMode.c |
141 |
@@ -395,7 +395,8 @@ drmModeConnectorPtr drmModeGetConnector(int fd, uint32_t connector_id) |
142 |
r->connection = conn.connection; |
143 |
r->mmWidth = conn.mm_width; |
144 |
r->mmHeight = conn.mm_height; |
145 |
- r->subpixel = conn.subpixel; |
146 |
+ /* convert subpixel from kernel to userspace */ |
147 |
+ r->subpixel = conn.subpixel + 1; |
148 |
r->count_modes = conn.count_modes; |
149 |
/* TODO we should test if these alloc & cpy fails. */ |
150 |
r->count_props = conn.count_props; |
151 |
-- |
152 |
1.6.2.3 |