Limit tab recording/capture indicator throbs to 3, then stay static.
[chromium-blink-merge.git] / gpu / config / gpu_driver_bug_list_json.cc
blob5a22a3257a5c0ed53ff549cf721c8aae914d4a17
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // Determines whether a certain driver bug exists in the current system.
6 // The format of a valid gpu_driver_bug_list.json file is defined in
7 // <gpu/config/gpu_control_list_format.txt>.
8 // The supported "features" can be found in
9 // <gpu/config/gpu_driver_bug_workaround_type.h>.
11 #include "gpu/config/gpu_control_list_jsons.h"
13 #define LONG_STRING_CONST(...) #__VA_ARGS__
15 namespace gpu {
17 const char kGpuDriverBugListJson[] = LONG_STRING_CONST(
20 "name": "gpu driver bug list",
21 // Please update the version number whenever you change this file.
22 "version": "2.17",
23 "entries": [
25 "id": 1,
26 "description": "Imagination driver doesn't like uploading lots of buffer data constantly",
27 "os": {
28 "type": "android"
30 "gl_vendor": {
31 "op": "beginwith",
32 "value": "Imagination"
34 "features": [
35 "use_client_side_arrays_for_stream_buffers"
39 "id": 2,
40 "description": "ARM driver doesn't like uploading lots of buffer data constantly",
41 "os": {
42 "type": "android"
44 "gl_vendor": {
45 "op": "beginwith",
46 "value": "ARM"
48 "features": [
49 "use_client_side_arrays_for_stream_buffers"
53 "id": 3,
54 "features": [
55 "set_texture_filter_before_generating_mipmap"
59 "id": 4,
60 "description": "Need to set the alpha to 255",
61 "features": [
62 "clear_alpha_in_readpixels"
66 "id": 5,
67 "vendor_id": "0x10de",
68 "features": [
69 "use_current_program_after_successful_link"
73 "id": 6,
74 "cr_bugs": [165493, 222018],
75 "os": {
76 "type": "android",
77 "version": {
78 "op": "<",
79 "value": "4.3"
82 "gl_vendor": {
83 "op": "beginwith",
84 "value": "Qualcomm"
86 "features": [
87 "restore_scissor_on_fbo_change"
91 "id": 7,
92 "cr_bugs": [89557],
93 "os": {
94 "type": "macosx"
96 "vendor_id": "0x10de",
97 "features": [
98 "needs_offscreen_buffer_workaround"
102 "id": 8,
103 "os": {
104 "type": "macosx"
106 "vendor_id": "0x1002",
107 "features": [
108 "needs_glsl_built_in_function_emulation"
112 "id": 9,
113 "description": "Mac AMD drivers get gl_PointCoord backward on OSX 10.8 or earlier",
114 "cr_bugs": [256349],
115 "os": {
116 "type": "macosx",
117 "version": {
118 "op": "<",
119 "value": "10.9"
122 "vendor_id": "0x1002",
123 "features": [
124 "reverse_point_sprite_coord_origin"
128 "id": 10,
129 "description": "Mac Intel drivers get gl_PointCoord backward on OSX 10.8 or earlier",
130 "cr_bugs": [256349],
131 "os": {
132 "type": "macosx",
133 "version": {
134 "op": "<",
135 "value": "10.9"
138 "vendor_id": "0x8086",
139 "features": [
140 "reverse_point_sprite_coord_origin"
144 "id": 11,
145 "os": {
146 "type": "macosx"
148 "vendor_id": "0x8086",
149 "features": [
150 "max_texture_size_limit_4096"
154 "id": 12,
155 "os": {
156 "type": "macosx"
158 "vendor_id": "0x8086",
159 "features": [
160 "max_cube_map_texture_size_limit_1024"
164 "id": 13,
165 "os": {
166 "type": "macosx",
167 "version": {
168 "op": "<",
169 "value": "10.7.3"
172 "vendor_id": "0x8086",
173 "features": [
174 "max_cube_map_texture_size_limit_512"
178 "id": 14,
179 "os": {
180 "type": "macosx"
182 "vendor_id": "0x1002",
183 "features": [
184 "max_texture_size_limit_4096",
185 "max_cube_map_texture_size_limit_4096"
189 "id": 15,
190 "description": "Some Android Qualcomm drivers falsely report GL_ANGLE_framebuffer_multisample",
191 "cr_bugs": [165736],
192 "os": {
193 "type": "android"
195 "gl_vendor": {
196 "op": "beginwith",
197 "value": "Qualcomm"
199 "features": [
200 "disable_angle_framebuffer_multisample"
204 "id": 16,
205 "description": "Intel drivers on Linux appear to be buggy",
206 "os": {
207 "type": "linux"
209 "vendor_id": "0x8086",
210 "features": [
211 "disable_ext_occlusion_query"
215 "id": 17,
216 "description": "Some drivers are unable to reset the D3D device in the GPU process sandbox",
217 "os": {
218 "type": "win"
220 "features": [
221 "exit_on_context_lost"
225 "id": 18,
226 "description": "Everything except async + NPOT + multiple-of-8 textures are brutally slow for Imagination drivers",
227 "os": {
228 "type": "android"
230 "gl_vendor": {
231 "op": "beginwith",
232 "value": "Imagination"
234 "features": [
235 "enable_chromium_fast_npot_mo8_textures"
239 "id": 19,
240 "os": {
241 "type": "android"
243 "gl_vendor": {
244 "op": "beginwith",
245 "value": "Qualcomm"
247 "features": [
248 "disable_depth_texture"
252 "id": 20,
253 "description": "Disable EXT_draw_buffers on GeForce GT 650M on Mac OS X due to driver bugs.",
254 "os": {
255 "type": "macosx"
257 "vendor_id": "0x10de",
258 "device_id": ["0x0fd5"],
259 "multi_gpu_category": "any",
260 "features": [
261 "disable_ext_draw_buffers"
265 "id": 21,
266 "description": "Vivante GPUs are buggy with context switching.",
267 "cr_bugs": [179250, 235935],
268 "os": {
269 "type": "android"
271 "gl_extensions": {
272 "op": "contains",
273 "value": "GL_VIV_shader_binary"
275 "features": [
276 "unbind_fbo_on_context_switch"
280 "id": 22,
281 "description": "Imagination drivers are buggy with context switching.",
282 "cr_bugs": [230896],
283 "os": {
284 "type": "android"
286 "gl_vendor": {
287 "op": "beginwith",
288 "value": "Imagination"
290 "features": [
291 "unbind_fbo_on_context_switch"
295 "id": 23,
296 "cr_bugs": [243038],
297 "description": "Disable OES_standard_derivative on Intel Pineview M Gallium drivers.",
298 "os": {
299 "type": "chromeos"
301 "vendor_id": "0x8086",
302 "device_id": ["0xa011", "0xa012"],
303 "features": [
304 "disable_oes_standard_derivatives"
308 "id": 24,
309 "cr_bugs": [231082],
310 "description": "Mali-400 drivers throw an error when a buffer object's size is set to 0.",
311 "os": {
312 "type": "android"
314 "gl_vendor": {
315 "op": "beginwith",
316 "value": "ARM"
318 "gl_renderer": {
319 "op": "contains",
320 "value": "Mali-400"
322 "features": [
323 "use_non_zero_size_for_client_side_stream_buffers"
327 "id": 25,
328 "cr_bugs": [152225],
329 "description":
330 "PBO + Readpixels + intel gpu doesn't work on OSX 10.7.",
331 "os": {
332 "type": "macosx",
333 "version": {
334 "op": "<",
335 "value": "10.8"
338 "vendor_id": "0x8086",
339 "features": [
340 "disable_async_readpixels"
344 "id": 26,
345 "description": "Disable use of Direct3D 11 on Windows Vista and lower.",
346 "os": {
347 "type": "win",
348 "version": {
349 "op": "<=",
350 "value": "6.0"
353 "features": [
354 "disable_d3d11"
358 "id": 27,
359 "cr_bugs": [265115],
360 "description": "Async Readpixels with GL_BGRA format is broken on Haswell chipset on Mac.",
361 "os": {
362 "type": "macosx"
364 "vendor_id": "0x8086",
365 "device_id": ["0x0402", "0x0406", "0x040a", "0x0412", "0x0416", "0x041a",
366 "0x0a04", "0x0a16", "0x0a22", "0x0a26", "0x0a2a"],
367 "features": [
368 "swizzle_rgba_for_async_readpixels"
372 "id": 28,
373 "cr_bugs": [277817],
374 "description": "Disable use of ANGLE_instanced_arrays on Windows",
375 "os": {
376 "type": "win"
378 "features": [
379 "disable_angle_instanced_arrays"
383 "id": 29,
384 "cr_bugs": [278606],
385 "description": "Testing fences is broken on QualComm.",
386 "os": {
387 "type": "android"
389 "gl_vendor": {
390 "op": "beginwith",
391 "value": "Qualcomm"
393 "features": [
394 "disable_async_readpixels"
398 "id": 30,
399 "cr_bugs": [237931],
400 "description": "Multisampling is buggy on OSX when multiple monitors are connected",
401 "os": {
402 "type": "macosx"
404 "features": [
405 "disable_multimonitor_multisampling"
409 "id": 31,
410 "cr_bugs": [154715, 10068, 269829],
411 "description": "The Nexus 10 Mali driver does not guarantee flush ordering.",
412 "os": {
413 "type": "android"
415 "gl_vendor": {
416 "op": "beginwith",
417 "value": "ARM"
419 "gl_renderer": {
420 "op": "contains",
421 "value": "Mali-T604"
423 "features": [
424 "use_virtualized_gl_contexts"
428 "id": 32,
429 "cr_bugs": [179815],
430 "description": "Share groups are not working on (older?) Broadcom drivers.",
431 "os": {
432 "type": "android"
434 "gl_vendor": {
435 "op": "beginwith",
436 "value": "Broadcom"
438 "features": [
439 "use_virtualized_gl_contexts"
443 "id": 33,
444 "description": "Share group-related crashes and poor context switching perf on Galaxy Nexus.",
445 "os": {
446 "type": "android"
448 "gl_vendor": {
449 "op": "beginwith",
450 "value": "Imagination"
452 "features": [
453 "use_virtualized_gl_contexts"
457 "id": 34,
458 "cr_bugs": [179250, 229643, 230896],
459 "description": "Share groups are not working on (older?) Vivante drivers.",
460 "os": {
461 "type": "android"
463 "gl_extensions": {
464 "op": "contains",
465 "value": "GL_VIV_shader_binary"
467 "features": [
468 "use_virtualized_gl_contexts"
472 "id": 35,
473 "cr_bugs": [163464],
474 "description": "Share-group related crashes on older NVIDIA drivers.",
475 "os": {
476 "type": "android",
477 "version": {
478 "op": "<",
479 "value": "4.3"
482 "gl_vendor": {
483 "op": "beginwith",
484 "value": "NVIDIA"
486 "features": [
487 "use_virtualized_gl_contexts"
491 "id": 36,
492 "cr_bugs": [163464, 233612],
493 "description": "Share-group related crashes on Qualcomm drivers.",
494 "os": {
495 "type": "android",
496 "version": {
497 "op": "<",
498 "value": "4.3"
501 "gl_vendor": {
502 "op": "beginwith",
503 "value": "Qualcomm"
505 "features": [
506 "use_virtualized_gl_contexts"
510 "id": 37,
511 "cr_bugs": [286468],
512 "description": "Program link fails in NVIDIA Linux if gl_Position is not set",
513 "os": {
514 "type": "linux"
516 "vendor_id": "0x10de",
517 "features": [
518 "init_gl_position_in_vertex_shader"
522 "id": 38,
523 "cr_bugs": [289461],
524 "description": "Non-virtual contexts on Qualcomm sometimes cause out-of-order frames",
525 "os": {
526 "type": "android"
528 "gl_vendor": {
529 "op": "beginwith",
530 "value": "Qualcomm"
532 "features": [
533 "use_virtualized_gl_contexts"
537 "id": 39,
538 "cr_bugs": [290391],
539 "description": "Multisampled renderbuffer allocation must be validated on some Macs",
540 "os": {
541 "type": "macosx"
543 "features": [
544 "validate_multisample_buffer_allocation"
548 "id": 40,
549 "cr_bugs": [290876],
550 "description": "Framebuffer discarding causes flickering on ARM",
551 "os": {
552 "type": "android"
554 "gl_vendor": {
555 "op": "beginwith",
556 "value": "ARM"
558 "features": [
559 "disable_ext_discard_framebuffer"
563 "id": 41,
564 "cr_bugs": [259978],
565 "description": "Intel D3D driver crashes when sharing surfaces between D3D9 and D3D11.",
566 "os": {
567 "type": "win"
569 "vendor_id": "0x8086",
570 "driver_version": {
571 "op": ">=",
572 "value": "9.18.10.0"
574 "features": [
575 "disable_d3d11"
579 "id": 42,
580 "cr_bugs": [290876],
581 "description": "Framebuffer discarding causes flickering on older IMG drivers.",
582 "os": {
583 "type": "android"
585 "gl_vendor": {
586 "op": "beginwith",
587 "value": "Imagination"
589 "gl_renderer": {
590 "op": "=",
591 "value": "PowerVR SGX 540"
593 "features": [
594 "disable_ext_discard_framebuffer"
600 ); // LONG_STRING_CONST macro
602 } // namespace gpu