Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(403)

Side by Side Diff: content/browser/gpu/gpu_driver_bug_list.json

Issue 15094006: Change gpu blacklists from json resource to const string. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Determines whether a certain driver bug exists in the current system.
2 // A valid gpu_driver_bug_list.json file are in the format of
3 // {
4 // "version": "x.y",
5 // "entries": [
6 // { // entry 1
7 // },
8 // ...
9 // { // entry n
10 // }
11 // ]
12 // }
13 //
14 // Each entry contains the following fields (fields are optional unless
15 // specifically described as mandatory below):
16 // 1. "id" is an integer. 0 is reserved. This field is mandatory.
17 // 2. "os" contains "type" and an optional "version". "type" could be "macosx",
18 // "linux", "win", "chromeos", or "any". "any" is the same as not specifying
19 // "os".
20 // "version" is a VERSION structure (defined below).
21 // 3. "vendor_id" is a string. 0 is reserved.
22 // 4. "device_id" is an array of strings. 0 is reserved.
23 // 5. "multi_gpu_style" is a string, valid values include "optimus", and
24 // "amd_switchable".
25 // 6. "multi_gpu_category" is a string, valid values include "any", "primary",
26 // and "secondary". If unspecified, the default value is "primary".
27 // 7. "driver_vendor" is a STRING structure (defined below).
28 // 8. "driver_version" is a VERSION structure (defined below).
29 // 9. "driver_date" is a VERSION structure (defined below).
30 // The version is interpreted as "year.month.day".
31 // 10. "gl_vendor" is a STRING structure (defined below).
32 // 11. "gl_renderer" is a STRING structure (defined below).
33 // 12. "gl_extensions" is a STRING structure (defined below).
34 // 13. "perf_graphics" is a FLOAT structure (defined below).
35 // 14. "perf_gaming" is a FLOAT structure (defined below).
36 // 15. "perf_overall" is a FLOAT structure (defined below).
37 // 16. "machine_model" contais "name" and an optional "version". "name" is a
38 // STRING structure and "version" is a VERSION structure (defined below).
39 // 17. "gpu_count" is a INT structure (defined below).
40 // 18 "cpu_info" is a STRING structure (defined below).
41 // 19. "exceptions" is a list of entries.
42 // 20. "features" is a list of driver bug types. For a list of supported types,
43 // see src/gpu/command_buffer/service/gpu_driver_bug_workaround_type.h
44 // This field is mandatory.
45 // 21. "description" has the description of the entry.
46 // 22. "webkit_bugs" is an array of associated webkit bug numbers.
47 // 23. "cr_bugs" is an array of associated chromium bug numbers.
48 // 24. "browser_version" is a VERSION structure (defined below). If this
49 // condition is not satisfied, the entry will be ignored. If it is not
50 // present, then the entry applies to all versions of the browser.
51 // 25. "disabled" is a boolean. If it is present, the entry will be skipped.
52 // This can not be used in exceptions.
53 //
54 // VERSION includes "op", "style", "number", and "number2". "op" can be any of
55 // the following values: "=", "<", "<=", ">", ">=", "any", "between". "style"
56 // is optional and can be "lexical" or "numerical"; if it's not specified, it
57 // defaults to "numerical". "number2" is only used if "op" is "between".
58 // "between" is "number <= * <= number2".
59 // "number" is used for all "op" values except "any". "number" and "number2"
60 // are in the format of x, x.x, x.x.x, etc.
61 // Only "driver_version" supports lexical style if the format is major.minor;
62 // in that case, major is still numerical, but minor is lexical.
63 //
64 // STRING includes "op" and "value". "op" can be any of the following values:
65 // "contains", "beginwith", "endwith", "=". "value" is a string.
66 //
67 // FLOAT includes "op" "value", and "value2". "op" can be any of the
68 // following values: "=", "<", "<=", ">", ">=", "any", "between". "value2" is
69 // only used if "op" is "between". "value" is used for all "op" values except
70 // "any". "value" and "value2" are valid float numbers.
71 // INT is very much like FLOAT, except that the values need to be integers.
72
73 {
74 "name": "gpu driver bug list",
75 // Please update the version number whenever you change this file.
76 "version": "1.4",
77 "entries": [
78 {
79 "id": 1,
80 "description": "Imagination driver doesn't like uploading lots of buffer d ata constantly",
81 "os": {
82 "type": "android"
83 },
84 "gl_vendor": {
85 "op": "beginwith",
86 "value": "Imagination"
87 },
88 "features": [
89 "use_client_side_arrays_for_stream_buffers"
90 ]
91 },
92 {
93 "id": 2,
94 "description": "ARM driver doesn't like uploading lots of buffer data cons tantly",
95 "os": {
96 "type": "android"
97 },
98 "gl_vendor": {
99 "op": "beginwith",
100 "value": "ARM"
101 },
102 "features": [
103 "use_client_side_arrays_for_stream_buffers"
104 ]
105 },
106 {
107 "id": 3,
108 "features": [
109 "set_texture_filter_before_generating_mipmap"
110 ]
111 },
112 {
113 "id": 4,
114 "description": "Need to set the alpha to 255",
115 "features": [
116 "clear_alpha_in_readpixels"
117 ]
118 },
119 {
120 "id": 5,
121 "vendor_id": "0x10de",
122 "features": [
123 "use_current_program_after_successful_link"
124 ]
125 },
126 {
127 "id": 6,
128 "os": {
129 "type": "android"
130 },
131 "gl_vendor": {
132 "op": "beginwith",
133 "value": "Qualcomm"
134 },
135 "features": [
136 "restore_scissor_on_fbo_change",
137 "flush_on_context_switch",
138 "delete_instead_of_resize_fbo" // Only need this on the ICS driver.
139 ]
140 },
141 {
142 "id": 7,
143 "cr_bugs": [89557],
144 "os": {
145 "type": "macosx"
146 },
147 "vendor_id": "0x10de",
148 "features": [
149 "needs_offscreen_buffer_workaround"
150 ]
151 },
152 {
153 "id": 8,
154 "os": {
155 "type": "macosx"
156 },
157 "vendor_id": "0x1002",
158 "features": [
159 "needs_glsl_built_in_function_emulation"
160 ]
161 },
162 {
163 "id": 9,
164 "description": "Mac AMD drivers get gl_PointCoord backward, rdar://problem /11883495",
165 "os": {
166 "type": "macosx"
167 },
168 "vendor_id": "0x1002",
169 "features": [
170 "reverse_point_sprite_coord_origin"
171 ]
172 },
173 {
174 "id": 10,
175 "description": "Mac Intel drivers get gl_PointCoord backward, rdar://probl em/11883495",
176 "os": {
177 "type": "macosx"
178 },
179 "vendor_id": "0x8086",
180 "features": [
181 "reverse_point_sprite_coord_origin"
182 ]
183 },
184 {
185 "id": 11,
186 "os": {
187 "type": "macosx"
188 },
189 "vendor_id": "0x8086",
190 "features": [
191 "max_texture_size_limit_4096"
192 ]
193 },
194 {
195 "id": 12,
196 "os": {
197 "type": "macosx"
198 },
199 "vendor_id": "0x8086",
200 "features": [
201 "max_cube_map_texture_size_limit_1024"
202 ]
203 },
204 {
205 "id": 13,
206 "os": {
207 "type": "macosx",
208 "version": {
209 "op": "<",
210 "number": "10.7.3"
211 }
212 },
213 "vendor_id": "0x8086",
214 "features": [
215 "max_cube_map_texture_size_limit_512"
216 ]
217 },
218 {
219 "id": 14,
220 "os": {
221 "type": "macosx"
222 },
223 "vendor_id": "0x1002",
224 "features": [
225 "max_texture_size_limit_4096",
226 "max_cube_map_texture_size_limit_4096"
227 ]
228 },
229 {
230 "id": 15,
231 "description": "Some Android Qualcomm drivers falsely report GL_ANGLE_fram ebuffer_multisample",
232 "cr_bugs": [165736],
233 "os": {
234 "type": "android"
235 },
236 "gl_vendor": {
237 "op": "beginwith",
238 "value": "Qualcomm"
239 },
240 "features": [
241 "disable_angle_framebuffer_multisample"
242 ]
243 },
244 {
245 "id": 16,
246 "description": "Intel drivers on Linux appear to be buggy",
247 "os": {
248 "type": "linux"
249 },
250 "vendor_id": "0x8086",
251 "features": [
252 "disable_ext_occlusion_query"
253 ]
254 },
255 {
256 "id": 17,
257 "description": "Some drivers are unable to reset the D3D device in the GPU process sandbox",
258 "os": {
259 "type": "win"
260 },
261 "features": [
262 "exit_on_context_lost"
263 ]
264 },
265 {
266 "id": 18,
267 "description": "Everything except async + NPOT + multiple-of-8 textures ar e brutally slow for Imagination drivers",
268 "os": {
269 "type": "android"
270 },
271 "gl_vendor": {
272 "op": "beginwith",
273 "value": "Imagination"
274 },
275 "features": [
276 "enable_chromium_fast_npot_mo8_textures"
277 ]
278 },
279 {
280 "id": 19,
281 "os": {
282 "type": "android"
283 },
284 "gl_vendor": {
285 "op": "beginwith",
286 "value": "Qualcomm"
287 },
288 "features": [
289 "disable_depth_texture"
290 ]
291 },
292 {
293 "id": 20,
294 "description": "Disable EXT_draw_buffers on GeForce GT 650M on Mac OS X du e to driver bugs.",
295 "os": {
296 "type": "macosx"
297 },
298 "vendor_id": "0x10de",
299 "device_id": ["0x0fd5"],
300 "multi_gpu_category": "any",
301 "features": [
302 "disable_ext_draw_buffers"
303 ]
304 },
305 {
306 "id": 21,
307 "description": "Vivante GPUs are buggy with context switching.",
308 "cr_bugs": [179250, 235935],
309 "os": {
310 "type": "android"
311 },
312 "gl_extensions": {
313 "op": "contains",
314 "value": "GL_VIV_shader_binary"
315 },
316 "features": [
317 "unbind_fbo_on_context_switch"
318 ]
319 },
320 {
321 "id": 22,
322 "description": "Imagination drivers are buggy with context switching.",
323 "cr_bugs": [230896],
324 "os": {
325 "type": "android"
326 },
327 "gl_vendor": {
328 "op": "beginwith",
329 "value": "Imagination"
330 },
331 "features": [
332 "unbind_fbo_on_context_switch"
333 ]
334 }
335 ]
336 }
OLDNEW
« no previous file with comments | « content/browser/gpu/gpu_data_manager_impl_private.cc ('k') | content/browser/gpu/gpu_driver_bug_list_json.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698