Home | History | Annotate | Download | only in config
      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.
      4 
      5 // Determines whether certain gpu-related features are blacklisted or not.
      6 // A valid software_rendering_list.json file are in the format of
      7 // {
      8 //   "version": "x.y",
      9 //   "entries": [
     10 //     { // entry 1
     11 //     },
     12 //     ...
     13 //     { // entry n
     14 //     }
     15 //   ]
     16 // }
     17 //
     18 // Each entry contains the following fields (fields are optional unless
     19 // specifically described as mandatory below):
     20 // 1. "id" is an integer.  0 is reserved.  This field is mandatory.
     21 // 2. "os" contains "type" and an optional "version". "type" could be "macosx",
     22 //    "linux", "win", "chromeos", or "any".  "any" is the same as not specifying
     23 //    "os".
     24 //    "version" is a VERSION structure (defined below).
     25 // 3. "vendor_id" is a string.  0 is reserved.
     26 // 4. "device_id" is an array of strings.  0 is reserved.
     27 // 5. "multi_gpu_style" is a string, valid values include "optimus", and
     28 //    "amd_switchable".
     29 // 6. "multi_gpu_category" is a string, valid values include "any", "primary",
     30 //    and "secondary".  If unspecified, the default value is "primary".
     31 // 7. "driver_vendor" is a STRING structure (defined below).
     32 // 8. "driver_version" is a VERSION structure (defined below).
     33 // 9. "driver_date" is a VERSION structure (defined below).
     34 //    The version is interpreted as "year.month.day".
     35 // 10. "gl_vendor" is a STRING structure (defined below).
     36 // 11. "gl_renderer" is a STRING structure (defined below).
     37 // 12. "gl_extensions" is a STRING structure (defined below).
     38 // 13. "gl_reset_notification_strategy" is an INT structure (defined below).
     39 // 14. "perf_graphics" is a FLOAT structure (defined below).
     40 // 15. "perf_gaming" is a FLOAT structure (defined below).
     41 // 16. "perf_overall" is a FLOAT structure (defined below).
     42 // 17. "machine_model" contais "name" and an optional "version".  "name" is a
     43 //     STRING structure and "version" is a VERSION structure (defined below).
     44 // 18. "gpu_count" is a INT structure (defined below).
     45 // 19  "cpu_info" is a STRING structure (defined below).
     46 // 20. "exceptions" is a list of entries.
     47 // 21. "features" is a list of gpu feature strings, valid values include
     48 //     "accelerated_2d_canvas", "accelerated_compositing", "webgl",
     49 //     "multisampling", "flash_3d", "flash_stage3d", "texture_sharing",
     50 //     "accelerated_video", "accelerated_video_decode", "panel_fitting",
     51 //     "force_compositing_mode", and "all".
     52 //     This field is mandatory.
     53 // 22. "description" has the description of the entry.
     54 // 23. "webkit_bugs" is an array of associated webkit bug numbers.
     55 // 24. "cr_bugs" is an array of associated webkit bug numbers.
     56 // 25. "browser_version" is a VERSION structure (defined below).  If this
     57 //     condition is not satisfied, the entry will be ignored.  If it is not
     58 //     present, then the entry applies to all versions of the browser.
     59 // 26. "disabled" is a boolean. If it is present, the entry will be skipped.
     60 //     This can not be used in exceptions.
     61 //
     62 // VERSION includes "op", "style", "number", and "number2".  "op" can be any of
     63 // the following values: "=", "<", "<=", ">", ">=", "any", "between".  "style"
     64 // is optional and can be "lexical" or "numerical"; if it's not specified, it
     65 // defaults to "numerical".  "number2" is only used if "op" is "between".
     66 // "between" is "number <= * <= number2".
     67 // "number" is used for all "op" values except "any". "number" and "number2"
     68 // are in the format of x, x.x, x.x.x, etc.
     69 // Only "driver_version" supports lexical style if the format is major.minor;
     70 // in that case, major is still numerical, but minor is lexical.
     71 //
     72 // STRING includes "op" and "value".  "op" can be any of the following values:
     73 // "contains", "beginwith", "endwith", "=".  "value" is a string.
     74 //
     75 // FLOAT includes "op" "value", and "value2".  "op" can be any of the
     76 // following values: "=", "<", "<=", ">", ">=", "any", "between".  "value2" is
     77 // only used if "op" is "between".  "value" is used for all "op" values except
     78 // "any". "value" and "value2" are valid float numbers.
     79 // INT is very much like FLOAT, except that the values need to be integers.
     80 
     81 #include "gpu/config/gpu_control_list_jsons.h"
     82 
     83 #define LONG_STRING_CONST(...) #__VA_ARGS__
     84 
     85 namespace gpu {
     86 
     87 const char kSoftwareRenderingListJson[] = LONG_STRING_CONST(
     88 
     89 {
     90   "name": "software rendering list",
     91   // Please update the version number whenever you change this file.
     92   "version": "6.5",
     93   "entries": [
     94     {
     95       "id": 1,
     96       "description": "ATI Radeon X1900 is not compatible with WebGL on the Mac.",
     97       "webkit_bugs": [47028],
     98       "os": {
     99         "type": "macosx"
    100       },
    101       "vendor_id": "0x1002",
    102       "device_id": ["0x7249"],
    103       "features": [
    104         "webgl",
    105         "flash_3d",
    106         "flash_stage3d"
    107       ]
    108     },
    109     {
    110       "id": 3,
    111       "description": "GL driver is software rendered. Accelerated compositing is disabled.",
    112       "cr_bugs": [59302],
    113       "os": {
    114         "type": "linux"
    115       },
    116       "gl_renderer": {
    117         "op": "contains",
    118         "value": "software"
    119       },
    120       "features": [
    121         "accelerated_compositing"
    122       ]
    123     },
    124     {
    125       "id": 4,
    126       "description": "The Intel Mobile 945 Express family of chipsets is not compatible with WebGL.",
    127       "cr_bugs": [232035],
    128       "os": {
    129         "type": "any"
    130       },
    131       "vendor_id": "0x8086",
    132       "device_id": ["0x27AE", "0x27A2"],
    133       "features": [
    134         "webgl",
    135         "flash_3d",
    136         "flash_stage3d",
    137         "accelerated_2d_canvas"
    138       ]
    139     },
    140     {
    141       "id": 5,
    142       "description": "ATI/AMD cards with older or third-party drivers in Linux are crash-prone.",
    143       "cr_bugs": [71381, 76428, 73910, 101225, 136240],
    144       "os": {
    145         "type": "linux"
    146       },
    147       "vendor_id": "0x1002",
    148       "exceptions": [
    149         {
    150           "driver_vendor": {
    151             "op": "contains",
    152             "value": "AMD"
    153           },
    154           "driver_version": {
    155             "op": ">=",
    156             "style": "lexical",
    157             "number": "8.98"
    158           }
    159         }
    160       ],
    161       "features": [
    162         "all"
    163       ]
    164     },
    165     {
    166       "id": 8,
    167       "description": "NVIDIA GeForce FX Go5200 is assumed to be buggy.",
    168       "cr_bugs": [72938],
    169       "os": {
    170         "type": "any"
    171       },
    172       "vendor_id": "0x10de",
    173       "device_id": ["0x0324"],
    174       "features": [
    175         "all"
    176       ]
    177     },
    178     {
    179       "id": 10,
    180       "description": "NVIDIA GeForce 7300 GT on Mac does not support WebGL.",
    181       "cr_bugs": [73794],
    182       "os": {
    183         "type": "macosx"
    184       },
    185       "vendor_id": "0x10de",
    186       "device_id": ["0x0393"],
    187       "features": [
    188         "webgl",
    189         "flash_3d",
    190         "flash_stage3d"
    191       ]
    192     },
    193     {
    194       "id": 12,
    195       "description": "Drivers older than 2009-01 on Windows are possibly unreliable.",
    196       "cr_bugs": [72979, 89802],
    197       "os": {
    198         "type": "win"
    199       },
    200       "driver_date": {
    201         "op": "<",
    202         "number": "2009.1"
    203       },
    204       "exceptions": [
    205         {
    206           "vendor_id": "0x8086",
    207           "device_id": ["0x29a2"],
    208           "driver_version": {
    209             "op": ">=",
    210             "number": "7.15.10.1624"
    211           }
    212         }
    213       ],
    214       "features": [
    215         "accelerated_2d_canvas",
    216         "accelerated_video",
    217         "accelerated_video_decode",
    218         "3d_css",
    219         "multisampling",
    220         "flash_3d",
    221         "force_compositing_mode"
    222       ]
    223     },
    224     {
    225       "id": 13,
    226       "description": "ATI drivers older than 10.6 on Windows XP are possibly unreliable.",
    227       "cr_bugs": [74212],
    228       "os": {
    229         "type": "win",
    230         "version": {
    231           "op": "=",
    232           "number": "5"
    233         }
    234       },
    235       "vendor_id": "0x1002",
    236       "driver_version": {
    237         "op": "<",
    238         "number": "8.741"
    239       },
    240       "features": [
    241         "accelerated_video",
    242         "accelerated_video_decode",
    243         "3d_css",
    244         "multisampling",
    245         "flash_3d",
    246         "force_compositing_mode"
    247       ]
    248     },
    249     {
    250       "id": 14,
    251       "description": "NVIDIA drivers older than 257.21 on Windows XP are possibly unreliable.",
    252       "cr_bugs": [74212],
    253       "os": {
    254         "type": "win",
    255         "version": {
    256           "op": "=",
    257           "number": "5"
    258         }
    259       },
    260       "vendor_id": "0x10de",
    261       "driver_version": {
    262         "op": "<",
    263         "number": "6.14.12.5721"
    264       },
    265       "features": [
    266         "accelerated_video",
    267         "accelerated_video_decode",
    268         "3d_css",
    269         "multisampling",
    270         "flash_3d",
    271         "force_compositing_mode"
    272       ]
    273     },
    274     {
    275       "id": 15,
    276       "description": "Intel drivers older than 14.42.7.5294 on Windows XP are possibly unreliable.",
    277       "cr_bugs": [74212],
    278       "os": {
    279         "type": "win",
    280         "version": {
    281           "op": "=",
    282           "number": "5"
    283         }
    284       },
    285       "vendor_id": "0x8086",
    286       "driver_version": {
    287         "op": "<",
    288         "number": "6.14.10.5294"
    289       },
    290       "features": [
    291         "accelerated_video",
    292         "accelerated_video_decode",
    293         "3d_css",
    294         "multisampling",
    295         "flash_3d",
    296         "force_compositing_mode"
    297       ]
    298     },
    299     {
    300       "id": 16,
    301       "description": "Multisampling is buggy in ATI cards on older MacOSX.",
    302       "cr_bugs": [67752, 83153],
    303       "os": {
    304         "type": "macosx",
    305         "version": {
    306           "op": "<",
    307           "number": "10.7.2"
    308         }
    309       },
    310       "vendor_id": "0x1002",
    311       "features": [
    312         "multisampling"
    313       ]
    314     },
    315     {
    316       "id": 17,
    317       "description": "Intel mesa drivers are crash-prone.",
    318       "cr_bugs": [76703, 164555, 225200],
    319       "os": {
    320         "type": "linux"
    321       },
    322       "vendor_id": "0x8086",
    323       "exceptions": [
    324         {
    325           "device_id": ["0x0102", "0x0106", "0x0112", "0x0116", "0x0122", "0x0126", "0x010a", "0x0152", "0x0156", "0x015a", "0x0162", "0x0166"],
    326           "driver_version": {
    327             "op": ">=",
    328             "number": "8.0"
    329           }
    330         },
    331         {
    332           "device_id": ["0xa001", "0xa002", "0xa011", "0xa012", "0x29a2", "0x2992", "0x2982", "0x2972", "0x2a12", "0x2a42", "0x2e02", "0x2e12", "0x2e22", "0x2e32", "0x2e42", "0x2e92"],
    333           "driver_version": {
    334             "op": ">",
    335             "number": "8.0.2"
    336           }
    337         },
    338         {
    339           "device_id": ["0x0042", "0x0046"],
    340           "driver_version": {
    341             "op": ">",
    342             "number": "8.0.4"
    343           }
    344         },
    345         {
    346           "device_id": ["0x2a02"],
    347           "driver_version": {
    348             "op": ">=",
    349             "number": "9.1"
    350           }
    351         }
    352       ],
    353       "features": [
    354         "all"
    355       ]
    356     },
    357     {
    358       "id": 18,
    359       "description": "NVIDIA Quadro FX 1500 is buggy.",
    360       "cr_bugs": [84701],
    361       "os": {
    362         "type": "linux"
    363       },
    364       "vendor_id": "0x10de",
    365       "device_id": ["0x029e"],
    366       "features": [
    367         "all"
    368       ]
    369     },
    370     {
    371       "id": 19,
    372       "description": "GPU acceleration is no longer supported in Leopard.",
    373       "cr_bugs": [87157, 130495],
    374       "os": {
    375         "type": "macosx",
    376         "version": {
    377           "op": "=",
    378           "number": "10.5"
    379         }
    380       },
    381       "features": [
    382         "all"
    383       ]
    384     },
    385     {
    386       "id": 23,
    387       "description": "Mesa drivers in linux older than 7.11 are assumed to be buggy.",
    388       "os": {
    389         "type": "linux"
    390       },
    391       "driver_vendor": {
    392         "op": "=",
    393         "value": "Mesa"
    394       },
    395       "driver_version": {
    396         "op": "<",
    397         "number": "7.11"
    398       },
    399       "features": [
    400         "all"
    401       ]
    402     },
    403     {
    404       "id": 24,
    405       "description": "Accelerated 2d canvas is unstable in Linux at the moment.",
    406       "os": {
    407         "type": "linux"
    408       },
    409       "features": [
    410         "accelerated_2d_canvas"
    411       ]
    412     },
    413     {
    414       "id": 27,
    415       "description": "ATI/AMD cards with older drivers in Linux are crash-prone.",
    416       "cr_bugs": [95934, 94973, 136240],
    417       "os": {
    418         "type": "linux"
    419       },
    420       "gl_vendor": {
    421         "op": "beginwith",
    422         "value": "ATI"
    423       },
    424       "exceptions": [
    425         {
    426           "driver_vendor": {
    427             "op": "contains",
    428             "value": "AMD"
    429           },
    430           "driver_version": {
    431             "op": ">=",
    432             "style": "lexical",
    433             "number": "8.98"
    434           }
    435         }
    436       ],
    437       "features": [
    438         "all"
    439       ]
    440     },
    441     {
    442       "id": 28,
    443       "description": "ATI/AMD cards with third-party drivers in Linux are crash-prone.",
    444       "cr_bugs": [95934, 94973],
    445       "os": {
    446         "type": "linux"
    447       },
    448       "gl_vendor": {
    449         "op": "beginwith",
    450         "value": "X.Org"
    451       },
    452       "gl_renderer": {
    453         "op": "contains",
    454         "value": "AMD"
    455       },
    456       "features": [
    457         "all"
    458       ]
    459     },
    460     {
    461       "id": 29,
    462       "description": "ATI/AMD cards with third-party drivers in Linux are crash-prone.",
    463       "cr_bugs": [95934, 94973],
    464       "os": {
    465         "type": "linux"
    466       },
    467       "gl_vendor": {
    468         "op": "beginwith",
    469         "value": "X.Org"
    470       },
    471       "gl_renderer": {
    472         "op": "contains",
    473         "value": "ATI"
    474       },
    475       "features": [
    476         "all"
    477       ]
    478     },
    479     {
    480       "id": 30,
    481       "description": "NVIDIA cards with nouveau drivers in Linux are crash-prone.",
    482       "cr_bugs": [94103],
    483       "os": {
    484         "type": "linux"
    485       },
    486       "vendor_id": "0x10de",
    487       "gl_vendor": {
    488         "op": "beginwith",
    489         "value": "nouveau"
    490       },
    491       "features": [
    492         "all"
    493       ]
    494     },
    495     {
    496       "id": 32,
    497       "description": "Accelerated 2d canvas is disabled on Windows systems with low perf stats.",
    498       "cr_bugs": [116350, 151500],
    499       "os": {
    500         "type": "win"
    501       },
    502       "perf_overall": {
    503         "op": "<",
    504         "value": "3.5"
    505       },
    506       "exceptions": [
    507         {
    508           "perf_gaming": {
    509             "op": ">",
    510             "value": "3.5"
    511           }
    512         },
    513         {
    514           "cpu_info": {
    515             "op": "contains",
    516             "value": "Atom"
    517           }
    518         }
    519       ],
    520       "features": [
    521         "accelerated_2d_canvas"
    522       ]
    523     },
    524     {
    525       "id": 33,
    526       "description": "Multisampling is buggy in Intel IvyBridge.",
    527       "cr_bugs": [116370],
    528       "os": {
    529         "type": "linux"
    530       },
    531       "vendor_id": "0x8086",
    532       "device_id": ["0x0152", "0x0156", "0x015a", "0x0162", "0x0166"],
    533       "features": [
    534           "multisampling"
    535       ]
    536     },
    537     {
    538       "id": 34,
    539       "description": "S3 Trio (used in Virtual PC) is not compatible.",
    540       "cr_bugs": [119948],
    541       "os": {
    542         "type": "win"
    543       },
    544       "vendor_id": "0x5333",
    545       "device_id": ["0x8811"],
    546       "features": [
    547         "all"
    548       ]
    549     },
    550     {
    551       "id": 35,
    552       "description": "Stage3D is not supported on Linux.",
    553       "cr_bugs": [129848],
    554       "os": {
    555         "type": "linux"
    556       },
    557       "features": [
    558         "flash_stage3d"
    559       ]
    560     },
    561     {
    562       "id": 37,
    563       "description": "Drivers are unreliable for Optimus on Linux.",
    564       "cr_bugs": [131308],
    565       "os": {
    566         "type": "linux"
    567       },
    568       "multi_gpu_style": "optimus",
    569       "features": [
    570         "all"
    571       ]
    572     },
    573     {
    574       "id": 38,
    575       "description": "Accelerated 2D canvas is unstable for NVidia GeForce 9400M on Lion.",
    576       "cr_bugs": [130495],
    577       "os": {
    578         "type": "macosx",
    579         "version": {
    580           "op": "=",
    581           "number": "10.7"
    582         }
    583       },
    584       "vendor_id": "0x10de",
    585       "device_id": ["0x0863"],
    586       "features": [
    587         "accelerated_2d_canvas"
    588       ]
    589     },
    590     {
    591       "id": 41,
    592       "description": "Disable 3D (but not Stage3D) in Flash on XP",
    593       "cr_bugs": [134885],
    594       "os": {
    595         "type": "win",
    596         "version": {
    597           "op": "=",
    598           "number": "5"
    599         }
    600       },
    601       "features": [
    602         "flash_3d"
    603       ]
    604     },
    605     {
    606       "id": 42,
    607       "description": "AMD Radeon HD 6490M on Snow Leopard is buggy.",
    608       "cr_bugs": [137307],
    609       "os": {
    610         "type": "macosx",
    611         "version": {
    612           "op": "=",
    613           "number": "10.6"
    614         }
    615       },
    616       "vendor_id": "0x1002",
    617       "device_id": ["0x6760"],
    618       "features": [
    619         "webgl"
    620       ]
    621     },
    622     {
    623       "id": 43,
    624       "description": "Intel driver version 8.15.10.1749 has problems sharing textures.",
    625       "cr_bugs": [133924],
    626       "os": {
    627         "type": "win"
    628       },
    629       "vendor_id": "0x8086",
    630       "driver_version": {
    631         "op": "=",
    632         "number": "8.15.10.1749"
    633       },
    634       "features": [
    635         "texture_sharing"
    636       ]
    637     },
    638     {
    639       "id": 44,
    640       "description": "Intel HD 4000 causes kernel panic on Lion.",
    641       "cr_bugs": [134015],
    642       "os": {
    643         "type": "macosx",
    644         "version": {
    645           "op": "between",
    646           "number": "10.7.0",
    647           "number2": "10.7.4"
    648         }
    649       },
    650       "vendor_id": "0x8086",
    651       "device_id": ["0x0166"],
    652       "multi_gpu_category": "any",
    653       "features": [
    654         "all"
    655       ]
    656     },
    657     {
    658       "id": 45,
    659       "description": "Parallels drivers older than 7 are buggy.",
    660       "cr_bugs": [138105],
    661       "os": {
    662         "type": "win"
    663       },
    664       "vendor_id": "0x1ab8",
    665       "driver_version": {
    666         "op": "<",
    667         "number": "7"
    668       },
    669       "features": [
    670         "all"
    671       ]
    672     },
    673     {
    674       "id": 46,
    675       "description": "ATI FireMV 2400 cards on Windows are buggy.",
    676       "cr_bugs": [124152],
    677       "os": {
    678         "type": "win"
    679       },
    680       "vendor_id": "0x1002",
    681       "device_id": ["0x3151"],
    682       "features": [
    683         "all"
    684       ]
    685     },
    686     {
    687       "id": 47,
    688       "description": "NVIDIA linux drivers older than 295.* are assumed to be buggy.",
    689       "cr_bugs": [78497],
    690       "os": {
    691         "type": "linux"
    692       },
    693       "vendor_id": "0x10de",
    694       "driver_vendor": {
    695         "op": "=",
    696         "value": "NVIDIA"
    697       },
    698       "driver_version": {
    699         "op": "<",
    700         "number": "295"
    701       },
    702       "features": [
    703         "all"
    704       ]
    705     },
    706     {
    707       "id": 48,
    708       // Please keep in sync with content/test/content_browser_test.cc.
    709       "description": "Accelerated video decode is unavailable on Mac and Linux.",
    710       "cr_bugs": [137247, 133828],
    711       "exceptions": [
    712         {
    713           "os": {
    714             "type": "chromeos"
    715           }
    716         },
    717         {
    718           "os": {
    719             "type": "win"
    720           }
    721         }
    722       ],
    723       "features": [
    724         "accelerated_video_decode"
    725       ]
    726     },
    727     {
    728       "id": 49,
    729       "description": "NVidia GeForce GT 650M can cause the system to hang with flash 3D.",
    730       "cr_bugs": [140175],
    731       "os": {
    732         "type": "macosx",
    733         "version": {
    734           "op": "between",
    735           "number": "10.8.0",
    736           "number2": "10.8.1"
    737         }
    738       },
    739       "multi_gpu_style": "optimus",
    740       "vendor_id": "0x10de",
    741       "device_id": ["0x0fd5"],
    742       "features": [
    743         "flash_3d",
    744         "flash_stage3d"
    745       ]
    746     },
    747     {
    748       "id": 50,
    749       "description": "Disable VMware software renderer.",
    750       "cr_bugs": [145531],
    751       "os": {
    752         "type": "linux"
    753       },
    754       "gl_vendor": {
    755         "op": "beginwith",
    756         "value": "VMware"
    757       },
    758       "features": [
    759         "all"
    760       ]
    761     },
    762     {
    763       "id": 51,
    764       "description": "NVIDIA drivers 6.14.11.9621 is buggy on Windows XP.",
    765       "cr_bugs": [152096],
    766       "os": {
    767         "type": "win",
    768         "version": {
    769           "op": "=",
    770           "number": "5"
    771         }
    772       },
    773       "vendor_id": "0x10de",
    774       "driver_version": {
    775         "op": "=",
    776         "number": "6.14.11.9621"
    777       },
    778       "features": [
    779         "all"
    780       ]
    781     },
    782     {
    783       "id": 52,
    784       "description": "NVIDIA drivers 6.14.11.8267 is buggy on Windows XP.",
    785       "cr_bugs": [152096],
    786       "os": {
    787         "type": "win",
    788         "version": {
    789           "op": "=",
    790           "number": "5"
    791         }
    792       },
    793       "vendor_id": "0x10de",
    794       "driver_version": {
    795         "op": "=",
    796         "number": "6.14.11.8267"
    797       },
    798       "features": [
    799         "all"
    800       ]
    801     },
    802     {
    803       "id": 53,
    804       "description": "The Intel GMA500 is too slow for Stage3D.",
    805       "cr_bugs": [152096],
    806       "vendor_id": "0x8086",
    807       "device_id": ["0x8108", "0x8109"],
    808       "features": [
    809         "flash_stage3d"
    810       ]
    811     },
    812     {
    813       "id": 55,
    814       "description": "Drivers older than 2007-01 on Windows are assumed to be buggy.",
    815       "cr_bugs": [72979, 89802],
    816       "os": {
    817         "type": "win"
    818       },
    819       "driver_date": {
    820         "op": "<",
    821         "number": "2007.1"
    822       },
    823       "exceptions": [
    824         {
    825           "vendor_id": "0x8086",
    826           "device_id": ["0x29a2"],
    827           "driver_version": {
    828             "op": ">=",
    829             "number": "7.15.10.1624"
    830           }
    831         }
    832       ],
    833       "features": [
    834         "all"
    835       ]
    836     },
    837     {
    838       "id": 56,
    839       "description": "NVIDIA linux drivers are unstable when using multiple Open GL contexts and with low memory.",
    840       "cr_bugs": [145600],
    841       "os": {
    842         "type": "linux"
    843       },
    844       "vendor_id": "0x10de",
    845       "driver_vendor": {
    846         "op": "=",
    847         "value": "NVIDIA"
    848       },
    849       "features": [
    850         "accelerated_video",
    851         "accelerated_video_decode",
    852         "flash_3d",
    853         "flash_stage3d"
    854       ]
    855     },
    856     {
    857       // Panel fitting is only used with OS_CHROMEOS. To avoid displaying an
    858       // error in chrome:gpu on every other platform, this blacklist entry needs
    859       // to only match on chromeos. The drawback is that panel_fitting will not
    860       // appear to be blacklisted if accidentally queried on non-chromeos.
    861       "id": 57,
    862       "description": "Chrome OS panel fitting is only supported for Intel IVB and SNB Graphics Controllers.",
    863       "os": {
    864         "type": "chromeos"
    865       },
    866       "exceptions": [
    867         {
    868           "vendor_id": "0x8086",
    869           "device_id": ["0x0106", "0x0116", "0x0166"]
    870         }
    871       ],
    872       "features": [
    873         "panel_fitting"
    874       ]
    875     },
    876     {
    877       "id": 59,
    878       "description": "NVidia driver 8.15.11.8593 is crashy on Windows.",
    879       "cr_bugs": [155749],
    880       "os": {
    881         "type": "win"
    882       },
    883       "vendor_id": "0x10de",
    884       "driver_version": {
    885         "op": "=",
    886         "number": "8.15.11.8593"
    887       },
    888       "features": [
    889         "accelerated_video_decode"
    890       ]
    891     },
    892     {
    893       "id": 60,
    894       "description": "Multisampling is buggy on Mac with NVIDIA gpu prior to 10.8.3.",
    895       "cr_bugs": [137303],
    896       "os": {
    897         "type": "macosx",
    898         "version": {
    899           "op": "<",
    900           "number": "10.8.3"
    901         }
    902       },
    903       "vendor_id": "0x10de",
    904       "features": [
    905         "multisampling"
    906       ]
    907     },
    908     {
    909       "id": 61,
    910       "description": "Multisampling is buggy on Mac with Intel gpu prior to 10.8.3.",
    911       "cr_bugs": [137303],
    912       "os": {
    913         "type": "macosx",
    914         "version": {
    915           "op": "<",
    916           "number": "10.8.3"
    917         }
    918       },
    919       "vendor_id": "0x8086",
    920       "features": [
    921         "multisampling"
    922       ]
    923     },
    924     {
    925       "id": 62,
    926       "description": "Accelerated 2D canvas buggy on old Qualcomm Adreno.",
    927       "cr_bugs": [161575],
    928       "os": {
    929         "type": "android"
    930       },
    931       "gl_renderer": {
    932         "op": "contains",
    933         "value": "Adreno"
    934       },
    935       "driver_version": {
    936         "op": "<",
    937         "number": "4.1"
    938       },
    939       "features": [
    940         "accelerated_2d_canvas"
    941       ]
    942     },
    943     {
    944       "id": 63,
    945       "description": "Multisampling is buggy on Mac with AMD gpu prior to 10.8.3.",
    946       "cr_bugs": [162466],
    947       "os": {
    948         "type": "macosx",
    949         "version": {
    950           "op": "<",
    951           "number": "10.8.3"
    952         }
    953       },
    954       "vendor_id": "0x1002",
    955       "features": [
    956         "multisampling"
    957       ]
    958     },
    959     {
    960       "id": 64,
    961       "description": "Hardware video decode is only supported in win7+.",
    962       "cr_bugs": [159458],
    963       "os": {
    964         "type": "win",
    965         "version": {
    966           "op": "<",
    967           "number": "6.1"
    968         }
    969       },
    970       "features": [
    971         "accelerated_video_decode"
    972       ]
    973     },
    974     {
    975       "id": 65,
    976       "description": "Force compositing mode is unstable in Win Vista.",
    977       "cr_bugs": [170421],
    978       "os": {
    979         "type": "win",
    980         "version": {
    981           "op": "=",
    982           "number": "6.0"
    983         }
    984       },
    985       "features": [
    986         "force_compositing_mode"
    987       ]
    988     },
    989     {
    990       "id": 66,
    991       "description": "Force compositing mode is unstable in MacOSX earlier than 10.8.",
    992       "cr_bugs": [174101],
    993       "os": {
    994         "type": "macosx",
    995         "version": {
    996           "op": "<",
    997           "number": "10.8"
    998         }
    999       },
   1000       "features": [
   1001         "force_compositing_mode"
   1002       ]
   1003     },
   1004     {
   1005       "id": 67,
   1006       "description": "Accelerated 2D Canvas is not supported on WinXP.",
   1007       "cr_bugs": [175149],
   1008       "os": {
   1009         "type": "win",
   1010         "version": {
   1011           "op": "=",
   1012           "number": "5"
   1013         }
   1014       },
   1015       "features": [
   1016         "accelerated_2d_canvas"
   1017       ]
   1018     },
   1019     {
   1020       "id": 68,
   1021       "description": "VMware Fusion 4 has corrupt rendering with Win Vista+.",
   1022       "cr_bugs": [169470],
   1023       "os": {
   1024         "type": "win",
   1025         "version": {
   1026           "op": ">=",
   1027           "number": "6.0"
   1028         }
   1029       },
   1030       "vendor_id": "0x15ad",
   1031       "driver_version": {
   1032         "op": "<=",
   1033         "number": "7.14.1.1134"
   1034       },
   1035       "features": [
   1036         "all"
   1037       ]
   1038     },
   1039     {
   1040       "id": 69,
   1041       "description": "NVIDIA driver 8.17.11.9621 is buggy with Stage3D baseline mode.",
   1042       "cr_bugs": [172771],
   1043       "os": {
   1044         "type": "win"
   1045       },
   1046       "vendor_id": "0x10de",
   1047       "driver_version": {
   1048         "op": "=",
   1049         "number": "8.17.11.9621"
   1050       },
   1051       "features": [
   1052         "flash_stage3d_baseline"
   1053       ]
   1054     },
   1055     {
   1056       "id": 70,
   1057       "description": "NVIDIA driver 8.17.11.8267 is buggy with Stage3D baseline mode.",
   1058       "cr_bugs": [172771],
   1059       "os": {
   1060         "type": "win"
   1061       },
   1062       "vendor_id": "0x10de",
   1063       "driver_version": {
   1064         "op": "=",
   1065         "number": "8.17.11.8267"
   1066       },
   1067       "features": [
   1068         "flash_stage3d_baseline"
   1069       ]
   1070     },
   1071     {
   1072       "id": 71,
   1073       "description": "All Intel drivers before 8.15.10.2021 are buggy with Stage3D baseline mode.",
   1074       "cr_bugs": [172771],
   1075       "os": {
   1076         "type": "win"
   1077       },
   1078       "vendor_id": "0x8086",
   1079       "driver_version": {
   1080         "op": "<",
   1081         "number": "8.15.10.2021"
   1082       },
   1083       "features": [
   1084         "flash_stage3d_baseline"
   1085       ]
   1086     },
   1087     {
   1088       "id": 72,
   1089       "description": "NVIDIA GeForce 6200 LE is buggy with WebGL.",
   1090       "cr_bugs": [232529],
   1091       "os": {
   1092         "type": "win"
   1093       },
   1094       "vendor_id": "0x10de",
   1095       "device_id": ["0x0163"],
   1096       "features": [
   1097         "webgl"
   1098       ]
   1099     },
   1100     {
   1101       "id": 73,
   1102       "description": "WebGL is buggy with the NVIDIA GeForce GT 330M, 9400, and 9400M on MacOSX earlier than 10.8",
   1103       "cr_bugs": [233523],
   1104       "os": {
   1105         "type": "macosx",
   1106         "version": {
   1107           "op": "<",
   1108           "number": "10.8"
   1109         }
   1110       },
   1111       "vendor_id": "0x10de",
   1112       "device_id": ["0x0a29", "0x0861", "0x0863"],
   1113       "features": [
   1114         "webgl"
   1115       ]
   1116     },
   1117     {
   1118       "id": 74,
   1119       "description": "GPU access is blocked if users don't have proper graphics driver installed after Windows installation",
   1120       "cr_bugs": [248178],
   1121       "os": {
   1122         "type": "win"
   1123       },
   1124       "driver_vendor": {
   1125         "op": "=",
   1126         "value": "Microsoft"
   1127       },
   1128       "features": [
   1129         "all"
   1130       ]
   1131     },
   1132     {
   1133       "id": 75,
   1134       "description": "Texture sharing not supported on AMD Switchable GPUs due to driver issues",
   1135       "cr_bugs": [117371],
   1136       "os": {
   1137         "type": "win"
   1138       },
   1139       "multi_gpu_style": "amd_switchable",
   1140       "features": [
   1141         "texture_sharing"
   1142       ]
   1143     },
   1144 )  // String split to avoid MSVC char limit.
   1145 LONG_STRING_CONST(
   1146     {
   1147       "id": 76,
   1148       "description": "WebGL is disabled on Android unless GPU reset notification is supported",
   1149       "os": {
   1150         "type": "android"
   1151       },
   1152       "exceptions": [
   1153         {
   1154           "gl_reset_notification_strategy": {
   1155             "op": "=",
   1156             "value": "33362"
   1157           }
   1158         }
   1159       ],
   1160       "features": [
   1161         "webgl"
   1162       ]
   1163     }
   1164   ]
   1165 }
   1166 
   1167 );  // LONG_STRING_CONST macro
   1168 
   1169 }  // namespace gpu
   1170 
   1171