| OLD | NEW |
| 1 // Determines whether a certain driver bug exists in the current system. | 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 | 2 // A valid gpu_driver_bug_list.json file are in the format of |
| 3 // { | 3 // { |
| 4 // "version": "x.y", | 4 // "version": "x.y", |
| 5 // "entries": [ | 5 // "entries": [ |
| 6 // { // entry 1 | 6 // { // entry 1 |
| 7 // }, | 7 // }, |
| 8 // ... | 8 // ... |
| 9 // { // entry n | 9 // { // entry n |
| 10 // } | 10 // } |
| (...skipping 20 matching lines...) Expand all Loading... |
| 31 // 10. "gl_vendor" is a STRING structure (defined below). | 31 // 10. "gl_vendor" is a STRING structure (defined below). |
| 32 // 11. "gl_renderer" is a STRING structure (defined below). | 32 // 11. "gl_renderer" is a STRING structure (defined below). |
| 33 // 12. "perf_graphics" is a FLOAT structure (defined below). | 33 // 12. "perf_graphics" is a FLOAT structure (defined below). |
| 34 // 13. "perf_gaming" is a FLOAT structure (defined below). | 34 // 13. "perf_gaming" is a FLOAT structure (defined below). |
| 35 // 14. "perf_overall" is a FLOAT structure (defined below). | 35 // 14. "perf_overall" is a FLOAT structure (defined below). |
| 36 // 15. "machine_model" contais "name" and an optional "version". "name" is a | 36 // 15. "machine_model" contais "name" and an optional "version". "name" is a |
| 37 // STRING structure and "version" is a VERSION structure (defined below). | 37 // STRING structure and "version" is a VERSION structure (defined below). |
| 38 // 16. "gpu_count" is a INT structure (defined below). | 38 // 16. "gpu_count" is a INT structure (defined below). |
| 39 // 17 "cpu_info" is a STRING structure (defined below). | 39 // 17 "cpu_info" is a STRING structure (defined below). |
| 40 // 18. "exceptions" is a list of entries. | 40 // 18. "exceptions" is a list of entries. |
| 41 // 19. "features" is a list of driver bug types, including | 41 // 19. "features" is a list of driver bug types. For a list of supported types, |
| 42 // "clear_alpha_in_readpixels", | 42 // see src/gpu/command_buffer/service/gpu_driver_bug_workaround_type.h |
| 43 // "clear_uniforms_before_program_use", | |
| 44 // "delete_instead_of_resize_fbo", | |
| 45 // "disable_angle_framebuffer_multisample", | |
| 46 // "disable_depth_texture", | |
| 47 // "disable_ext_occlusion_query", | |
| 48 // "enable_chromium_fast_npot_mo8_textures", | |
| 49 // "exit_on_context_lost", | |
| 50 // "flush_on_context_switch", | |
| 51 // "max_cube_map_texture_size_limit_1024", | |
| 52 // "max_cube_map_texture_size_limit_4096", | |
| 53 // "max_cube_map_texture_size_limit_512", | |
| 54 // "max_texture_size_limit_4096", | |
| 55 // "needs_glsl_built_in_function_emulation", | |
| 56 // "needs_offscreen_buffer_workaround", | |
| 57 // "restore_scissor_on_fbo_change", | |
| 58 // "reverse_point_sprite_coord_origin", | |
| 59 // "set_texture_filter_before_generating_mipmap", | |
| 60 // "use_client_side_arrays_for_stream_buffers", | |
| 61 // "use_current_program_after_successful_link". | |
| 62 // This field is mandatory. | 43 // This field is mandatory. |
| 63 // 20. "description" has the description of the entry. | 44 // 20. "description" has the description of the entry. |
| 64 // 21. "webkit_bugs" is an array of associated webkit bug numbers. | 45 // 21. "webkit_bugs" is an array of associated webkit bug numbers. |
| 65 // 22. "cr_bugs" is an array of associated chromium bug numbers. | 46 // 22. "cr_bugs" is an array of associated chromium bug numbers. |
| 66 // 23. "browser_version" is a VERSION structure (defined below). If this | 47 // 23. "browser_version" is a VERSION structure (defined below). If this |
| 67 // condition is not satisfied, the entry will be ignored. If it is not | 48 // condition is not satisfied, the entry will be ignored. If it is not |
| 68 // present, then the entry applies to all versions of the browser. | 49 // present, then the entry applies to all versions of the browser. |
| 69 // 24. "disabled" is a boolean. If it is present, the entry will be skipped. | 50 // 24. "disabled" is a boolean. If it is present, the entry will be skipped. |
| 70 // This can not be used in exceptions. | 51 // This can not be used in exceptions. |
| 71 // | 52 // |
| (...skipping 12 matching lines...) Expand all Loading... |
| 84 // | 65 // |
| 85 // FLOAT includes "op" "value", and "value2". "op" can be any of the | 66 // FLOAT includes "op" "value", and "value2". "op" can be any of the |
| 86 // following values: "=", "<", "<=", ">", ">=", "any", "between". "value2" is | 67 // following values: "=", "<", "<=", ">", ">=", "any", "between". "value2" is |
| 87 // only used if "op" is "between". "value" is used for all "op" values except | 68 // only used if "op" is "between". "value" is used for all "op" values except |
| 88 // "any". "value" and "value2" are valid float numbers. | 69 // "any". "value" and "value2" are valid float numbers. |
| 89 // INT is very much like FLOAT, except that the values need to be integers. | 70 // INT is very much like FLOAT, except that the values need to be integers. |
| 90 | 71 |
| 91 { | 72 { |
| 92 "name": "gpu driver bug list", | 73 "name": "gpu driver bug list", |
| 93 // Please update the version number whenever you change this file. | 74 // Please update the version number whenever you change this file. |
| 94 "version": "1.2", | 75 "version": "1.3", |
| 95 "entries": [ | 76 "entries": [ |
| 96 { | 77 { |
| 97 "id": 1, | 78 "id": 1, |
| 98 "description": "Imagination driver doesn't like uploading lots of buffer d
ata constantly", | 79 "description": "Imagination driver doesn't like uploading lots of buffer d
ata constantly", |
| 99 "os": { | 80 "os": { |
| 100 "type": "android" | 81 "type": "android" |
| 101 }, | 82 }, |
| 102 "gl_vendor": { | 83 "gl_vendor": { |
| 103 "op": "beginwith", | 84 "op": "beginwith", |
| 104 "value": "Imagination" | 85 "value": "Imagination" |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 213 "id": 12, | 194 "id": 12, |
| 214 "os": { | 195 "os": { |
| 215 "type": "macosx" | 196 "type": "macosx" |
| 216 }, | 197 }, |
| 217 "vendor_id": "0x8086", | 198 "vendor_id": "0x8086", |
| 218 "features": [ | 199 "features": [ |
| 219 "max_cube_map_texture_size_limit_1024" | 200 "max_cube_map_texture_size_limit_1024" |
| 220 ] | 201 ] |
| 221 }, | 202 }, |
| 222 { | 203 { |
| 223 "id": 12, | 204 "id": 13, |
| 224 "os": { | 205 "os": { |
| 225 "type": "macosx", | 206 "type": "macosx", |
| 226 "version": { | 207 "version": { |
| 227 "op": "<", | 208 "op": "<", |
| 228 "number": "10.7.3" | 209 "number": "10.7.3" |
| 229 } | 210 } |
| 230 }, | 211 }, |
| 231 "vendor_id": "0x8086", | 212 "vendor_id": "0x8086", |
| 232 "features": [ | 213 "features": [ |
| 233 "max_cube_map_texture_size_limit_512" | 214 "max_cube_map_texture_size_limit_512" |
| 234 ] | 215 ] |
| 235 }, | 216 }, |
| 236 { | 217 { |
| 237 "id": 13, | 218 "id": 14, |
| 238 "os": { | 219 "os": { |
| 239 "type": "macosx" | 220 "type": "macosx" |
| 240 }, | 221 }, |
| 241 "vendor_id": "0x1002", | 222 "vendor_id": "0x1002", |
| 242 "features": [ | 223 "features": [ |
| 243 "max_texture_size_limit_4096", | 224 "max_texture_size_limit_4096", |
| 244 "max_cube_map_texture_size_limit_4096" | 225 "max_cube_map_texture_size_limit_4096" |
| 245 ] | 226 ] |
| 246 }, | 227 }, |
| 247 { | 228 { |
| 248 "id": 14, | 229 "id": 15, |
| 249 "description": "Some Android Qualcomm drivers falsely report GL_ANGLE_fram
ebuffer_multisample", | 230 "description": "Some Android Qualcomm drivers falsely report GL_ANGLE_fram
ebuffer_multisample", |
| 250 "cr_bugs": [165736], | 231 "cr_bugs": [165736], |
| 251 "os": { | 232 "os": { |
| 252 "type": "android" | 233 "type": "android" |
| 253 }, | 234 }, |
| 254 "gl_vendor": { | 235 "gl_vendor": { |
| 255 "op": "beginwith", | 236 "op": "beginwith", |
| 256 "value": "Qualcomm" | 237 "value": "Qualcomm" |
| 257 }, | 238 }, |
| 258 "features": [ | 239 "features": [ |
| 259 "disable_angle_framebuffer_multisample" | 240 "disable_angle_framebuffer_multisample" |
| 260 ] | 241 ] |
| 261 }, | 242 }, |
| 262 { | 243 { |
| 263 "id": 15, | 244 "id": 16, |
| 264 "description": "Intel drivers on Linux appear to be buggy", | 245 "description": "Intel drivers on Linux appear to be buggy", |
| 265 "os": { | 246 "os": { |
| 266 "type": "linux" | 247 "type": "linux" |
| 267 }, | 248 }, |
| 268 "vendor_id": "0x8086", | 249 "vendor_id": "0x8086", |
| 269 "features": [ | 250 "features": [ |
| 270 "disable_ext_occlusion_query" | 251 "disable_ext_occlusion_query" |
| 271 ] | 252 ] |
| 272 }, | 253 }, |
| 273 { | 254 { |
| 274 "id": 16, | 255 "id": 17, |
| 275 "description": "Some drivers are unable to reset the D3D device in the GPU
process sandbox", | 256 "description": "Some drivers are unable to reset the D3D device in the GPU
process sandbox", |
| 276 "os": { | 257 "os": { |
| 277 "type": "win" | 258 "type": "win" |
| 278 }, | 259 }, |
| 279 "features": [ | 260 "features": [ |
| 280 "exit_on_context_lost" | 261 "exit_on_context_lost" |
| 281 ] | 262 ] |
| 282 }, | 263 }, |
| 283 { | 264 { |
| 284 "id": 17, | 265 "id": 18, |
| 285 "description": "Everything except async + NPOT + multiple-of-8 textures ar
e brutally slow for Imagination drivers", | 266 "description": "Everything except async + NPOT + multiple-of-8 textures ar
e brutally slow for Imagination drivers", |
| 286 "os": { | 267 "os": { |
| 287 "type": "android" | 268 "type": "android" |
| 288 }, | 269 }, |
| 289 "gl_vendor": { | 270 "gl_vendor": { |
| 290 "op": "beginwith", | 271 "op": "beginwith", |
| 291 "value": "Imagination" | 272 "value": "Imagination" |
| 292 }, | 273 }, |
| 293 "features": [ | 274 "features": [ |
| 294 "enable_chromium_fast_npot_mo8_textures" | 275 "enable_chromium_fast_npot_mo8_textures" |
| 295 ] | 276 ] |
| 296 }, | 277 }, |
| 297 { | 278 { |
| 298 "id": 17, | 279 "id": 19, |
| 299 "os": { | 280 "os": { |
| 300 "type": "android" | 281 "type": "android" |
| 301 }, | 282 }, |
| 302 "gl_vendor": { | 283 "gl_vendor": { |
| 303 "op": "beginwith", | 284 "op": "beginwith", |
| 304 "value": "Qualcomm" | 285 "value": "Qualcomm" |
| 305 }, | 286 }, |
| 306 "features": [ | 287 "features": [ |
| 307 "disable_depth_texture" | 288 "disable_depth_texture" |
| 308 ] | 289 ] |
| 309 }, | 290 }, |
| 310 { | 291 { |
| 311 "id": 18, | 292 "id": 20, |
| 312 "description": "Disable EXT_draw_buffers on GeForce GT 650M on Mac OS X du
e to driver bugs.", | 293 "description": "Disable EXT_draw_buffers on GeForce GT 650M on Mac OS X du
e to driver bugs.", |
| 313 "os": { | 294 "os": { |
| 314 "type": "macosx" | 295 "type": "macosx" |
| 315 }, | 296 }, |
| 316 "vendor_id": "0x10de", | 297 "vendor_id": "0x10de", |
| 317 "device_id": ["0x0fd5"], | 298 "device_id": ["0x0fd5"], |
| 318 "multi_gpu_category": "any", | 299 "multi_gpu_category": "any", |
| 319 "features": [ | 300 "features": [ |
| 320 "disable_ext_draw_buffers" | 301 "disable_ext_draw_buffers" |
| 321 ] | 302 ] |
| 322 } | 303 } |
| 323 ] | 304 ] |
| 324 } | 305 } |
| OLD | NEW |