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 certain gpu-related features are blacklisted or not.
6 // The format of a valid software_rendering_list.json file is defined in
7 // <gpu/config/gpu_control_list_format.txt>.
8 // The supported "features" can be found in <gpu/config/gpu_blacklist.cc>.
10 #include "gpu/config/gpu_control_list_jsons.h"
12 #define LONG_STRING_CONST(...) #__VA_ARGS__
16 const char kSoftwareRenderingListJson
[] = LONG_STRING_CONST(
19 "name": "software rendering list",
20 // Please update the version number whenever you change this file.
25 "description": "ATI Radeon X1900 is not compatible with WebGL on the Mac",
26 "webkit_bugs": [47028],
30 "vendor_id": "0x1002",
31 "device_id": ["0x7249"],
40 "description": "GL driver is software rendered. GPU acceleration is disabled",
41 "cr_bugs": [59302, 315217],
45 "gl_renderer": "(?i).*software.*",
52 "description": "The Intel Mobile 945 Express family of chipsets is not compatible with WebGL",
57 "vendor_id": "0x8086",
58 "device_id": ["0x27AE", "0x27A2"],
63 "accelerated_2d_canvas"
68 "description": "ATI/AMD cards with older drivers in Linux are crash-prone",
69 "cr_bugs": [71381, 76428, 73910, 101225, 136240, 357314],
73 "vendor_id": "0x1002",
76 "driver_vendor": ".*AMD.*",
84 "driver_vendor": "Mesa",
97 "description": "NVIDIA GeForce FX Go5200 is assumed to be buggy",
102 "vendor_id": "0x10de",
103 "device_id": ["0x0324"],
110 "description": "NVIDIA GeForce 7300 GT on Mac does not support WebGL",
115 "vendor_id": "0x10de",
116 "device_id": ["0x0393"],
125 "description": "Drivers older than 2009-01 on Windows are possibly unreliable",
126 "cr_bugs": [72979, 89802, 315205],
136 "vendor_id": "0x8086",
137 "device_id": ["0x29a2"],
140 "value": "7.15.10.1624"
144 "driver_vendor": "osmesa"
147 "vendor_id": "0x1414",
148 "device_id": ["0x02c1"]
157 "description": "Older Intel mesa drivers are crash-prone",
158 "cr_bugs": [76703, 164555, 225200, 340886],
162 "vendor_id": "0x8086",
163 "driver_vendor": "Mesa",
170 "device_id": ["0x0102", "0x0106", "0x0112", "0x0116", "0x0122", "0x0126", "0x010a", "0x0152", "0x0156", "0x015a", "0x0162", "0x0166"],
177 "device_id": ["0xa001", "0xa002", "0xa011", "0xa012", "0x29a2", "0x2992", "0x2982", "0x2972", "0x2a12", "0x2a42", "0x2e02", "0x2e12", "0x2e22", "0x2e32", "0x2e42", "0x2e92"],
184 "device_id": ["0x0042", "0x0046"],
191 "device_id": ["0x2a02"],
198 "device_id": ["0x0a16", "0x0a26"],
211 "description": "NVIDIA Quadro FX 1500 is buggy",
216 "vendor_id": "0x10de",
217 "device_id": ["0x029e"],
224 "description": "Mesa drivers in linux older than 7.11 are assumed to be buggy",
228 "driver_vendor": "Mesa",
235 "driver_vendor": "osmesa"
244 "description": "Accelerated 2d canvas is unstable in Linux at the moment",
249 "accelerated_2d_canvas"
254 "description": "ATI/AMD cards with older drivers in Linux are crash-prone",
255 "cr_bugs": [95934, 94973, 136240, 357314],
259 "gl_vendor": "ATI.*",
262 "driver_vendor": ".*AMD.*",
270 "driver_vendor": "Mesa",
283 "description": "ATI/AMD cards with third-party drivers in Linux are crash-prone",
284 "cr_bugs": [95934, 94973, 357314],
288 "gl_vendor": "X\\.Org.*",
289 "gl_renderer": ".*AMD.*",
292 "driver_vendor": "Mesa",
305 "description": "ATI/AMD cards with third-party drivers in Linux are crash-prone",
306 "cr_bugs": [95934, 94973, 357314],
310 "gl_vendor": "X\\.Org.*",
311 "gl_renderer": ".*ATI.*",
314 "driver_vendor": "Mesa",
327 "description": "NVIDIA cards with nouveau drivers in Linux are crash-prone",
332 "vendor_id": "0x10de",
333 "gl_vendor": "(?i)nouveau.*",
334 "driver_vendor": "Mesa",
345 "description": "S3 Trio (used in Virtual PC) is not compatible",
350 "vendor_id": "0x5333",
351 "device_id": ["0x8811"],
358 "description": "Older drivers are unreliable for Optimus on Linux",
359 "cr_bugs": [131308, 363418],
363 "multi_gpu_style": "optimus",
366 "driver_vendor": "Mesa",
371 "gl_vendor": "Intel.*"
380 "description": "Accelerated 2D canvas is unstable for NVidia GeForce 9400M on Lion",
389 "vendor_id": "0x10de",
390 "device_id": ["0x0863"],
392 "accelerated_2d_canvas"
397 "description": "AMD Radeon HD 6490M and 6970M on Snow Leopard are buggy",
398 "cr_bugs": [137307, 285350],
406 "vendor_id": "0x1002",
407 "device_id": ["0x6760", "0x6720"],
414 "description": "Intel HD 4000 causes kernel panic on Lion",
424 "vendor_id": "0x8086",
425 "device_id": ["0x0166"],
426 "multi_gpu_category": "any",
433 "description": "Parallels drivers older than 7 are buggy",
438 "vendor_id": "0x1ab8",
449 "description": "ATI FireMV 2400 cards on Windows are buggy",
454 "vendor_id": "0x1002",
455 "device_id": ["0x3151"],
462 "description": "NVIDIA linux drivers older than 295.* are assumed to be buggy",
467 "vendor_id": "0x10de",
468 "driver_vendor": "NVIDIA",
479 "description": "Accelerated video decode is unavailable on Linux",
485 "accelerated_video_decode"
490 "description": "NVidia GeForce GT 650M can cause the system to hang with flash 3D",
500 "multi_gpu_style": "optimus",
501 "vendor_id": "0x10de",
502 "device_id": ["0x0fd5"],
510 "description": "Disable VMware software renderer on older Mesa",
511 "cr_bugs": [145531, 332596],
515 "gl_vendor": "VMware.*",
518 "driver_vendor": "Mesa",
523 "gl_renderer": ".*SVGA3D.*"
532 "description": "The Intel GMA500 is too slow for Stage3D",
534 "vendor_id": "0x8086",
535 "device_id": ["0x8108", "0x8109"],
542 "description": "NVIDIA linux drivers are unstable when using multiple Open GL contexts and with low memory",
547 "vendor_id": "0x10de",
548 "driver_vendor": "NVIDIA",
554 "accelerated_video_decode",
560 // Panel fitting is only used with OS_CHROMEOS. To avoid displaying an
561 // error in chrome:gpu on every other platform, this blacklist entry needs
562 // to only match on chromeos. The drawback is that panel_fitting will not
563 // appear to be blacklisted if accidentally queried on non-chromeos.
565 "description": "Chrome OS panel fitting is only supported for Intel IVB and SNB Graphics Controllers",
571 "vendor_id": "0x8086",
572 "device_id": ["0x0106", "0x0116", "0x0166"]
581 "description": "NVidia driver 8.15.11.8593 is crashy on Windows",
586 "vendor_id": "0x10de",
589 "value": "8.15.11.8593"
592 "accelerated_video_decode"
597 "description": "Hardware video decode is only supported in win7+",
607 "accelerated_video_decode"
612 "description": "VMware Fusion 4 has corrupt rendering with Win Vista+",
621 "vendor_id": "0x15ad",
624 "value": "7.14.1.1134"
632 "description": "NVIDIA driver 8.17.11.9621 is buggy with Stage3D baseline mode",
637 "vendor_id": "0x10de",
640 "value": "8.17.11.9621"
643 "flash_stage3d_baseline"
648 "description": "NVIDIA driver 8.17.11.8267 is buggy with Stage3D baseline mode",
653 "vendor_id": "0x10de",
656 "value": "8.17.11.8267"
659 "flash_stage3d_baseline"
664 "description": "All Intel drivers before 8.15.10.2021 are buggy with Stage3D baseline mode",
669 "vendor_id": "0x8086",
672 "value": "8.15.10.2021"
675 "flash_stage3d_baseline"
680 "description": "NVIDIA GeForce 6200 LE is buggy with WebGL",
685 "vendor_id": "0x10de",
686 "device_id": ["0x0163"],
693 "description": "WebGL is buggy with the NVIDIA GeForce GT 330M, 9400, and 9400M on MacOSX earlier than 10.8",
702 "vendor_id": "0x10de",
703 "device_id": ["0x0a29", "0x0861", "0x0863"],
710 "description": "GPU access is blocked if users don't have proper graphics driver installed after Windows installation",
715 "driver_vendor": "Microsoft",
718 "vendor_id": "0x1414",
719 "device_id": ["0x02c1"]
726 ) // String split to avoid MSVC char limit.
730 "description": "WebGL is disabled on Android unless GPU reset notification is supported",
736 "gl_reset_notification_strategy": {
742 "gl_renderer": "Mali-400.*",
743 "gl_extensions": ".*EXT_robustness.*"
752 "description": "Accelerated video decode interferes with GPU sandbox on older Intel drivers",
753 "cr_bugs": [180695, 298968, 436968],
757 "vendor_id": "0x8086",
760 "value": "8.15.10.2702"
763 "accelerated_video_decode"
768 "description": "Disable GPU on all Windows versions prior to and including Vista",
783 "description": "Apple software renderer used under VMWare hangs on Mac OS 10.6 and 10.7",
792 "vendor_id": "0x15ad",
799 "description": "MediaCodec is still too buggy to use for encoding (b/11536167)",
804 "accelerated_video_encode"
809 "description": "Samsung Galaxy NOTE is too buggy to use for video decoding",
818 "machine_model_name": ["GT-.*"],
820 "accelerated_video_decode"
825 "description": "Samsung Galaxy S4 is too buggy to use for video decoding",
834 "machine_model_name": ["SCH-.*"],
836 "accelerated_video_decode"
841 "description": "Intel Graphics Media Accelerator 3150 causes the GPU process to hang running WebGL",
846 "vendor_id": "0x8086",
847 "device_id": ["0xa011"],
854 "description": "Accelerated video decode on Intel driver 10.18.10.3308 is incompatible with the GPU sandbox",
859 "vendor_id": "0x8086",
862 "value": "10.18.10.3308"
865 "accelerated_video_decode"
870 "description": "Accelerated video decode on AMD driver 13.152.1.8000 is incompatible with the GPU sandbox",
875 "vendor_id": "0x1002",
878 "value": "13.152.1.8000"
881 "accelerated_video_decode"
886 "description": "Accelerated video decode interferes with GPU sandbox on certain AMD drivers",
891 "vendor_id": "0x1002",
894 "value": "8.810.4.5000",
895 "value2": "8.970.100.1100"
898 "accelerated_video_decode"
903 "description": "Accelerated video decode interferes with GPU sandbox on certain NVIDIA drivers",
908 "vendor_id": "0x10de",
911 "value": "8.17.12.5729",
912 "value2": "8.17.12.8026"
915 "accelerated_video_decode"
920 "description": "Accelerated video decode interferes with GPU sandbox on certain NVIDIA drivers",
925 "vendor_id": "0x10de",
928 "value": "9.18.13.783",
929 "value2": "9.18.13.1090"
932 "accelerated_video_decode"
937 "description": "Accelerated video decode does not work with the discrete GPU on AMD switchables",
942 "multi_gpu_style": "amd_switchable_discrete",
944 "accelerated_video_decode"
949 "description": "GLX indirect rendering (X remoting) is not supported",
954 "direct_rendering": false,
961 "description": "Intel driver version 8.15.10.1749 causes GPU process hangs.",
966 "vendor_id": "0x8086",
969 "value": "8.15.10.1749"
977 "description": "AMD driver version 13.101 is unstable on linux.",
982 "vendor_id": "0x1002",
983 "driver_vendor": ".*AMD.*",
994 "description": "Blacklist GPU raster/canvas on all except known good GPUs and newer Android releases",
995 "cr_bugs": [362779,424970],
1004 "gl_renderer": "Adreno \\(TM\\) 3.*"
1010 "gl_renderer": "Mali-400.*"
1016 "gl_renderer": "NVIDIA.*"
1022 "gl_renderer": "VideoCore IV.*"
1040 "gpu_rasterization",
1041 "accelerated_2d_canvas"
1046 "description": "GPU rasterization and canvas is blacklisted on Nexus 10",
1047 "cr_bugs": [407144],
1051 "gl_renderer": ".*Mali-T604.*",
1053 "gpu_rasterization",
1054 "accelerated_2d_canvas"
1059 "description": "Samsung Galaxy Tab is too buggy to use for video decoding",
1060 "cr_bugs": [408353],
1068 "machine_model_name": ["SM-.*"],
1070 "accelerated_video_decode"
1075 "description": "Accelerated 2D canvas and Ganesh broken on Galaxy Tab 2",
1076 "cr_bugs": [416910],
1080 "gl_renderer": "PowerVR SGX 540",
1082 "accelerated_2d_canvas",
1088 "description": "Intel GM965/GL960 crash often on Mac OS 10.6",
1089 "cr_bugs": [421641],
1097 "vendor_id": "0x8086",
1098 "device_id": ["0x2a02"],
1105 "description": "GPU raster broken on PowerVR Rogue",
1106 "cr_bugs": [436331, 483574],
1110 "gl_renderer": "PowerVR Rogue.*",
1112 "accelerated_2d_canvas",
1118 "description": "GPU raster broken on PowerVR SGX even on Lollipop",
1119 "cr_bugs": [461456],
1123 "gl_renderer": "PowerVR SGX.*",
1125 "accelerated_2d_canvas",
1131 "description": "GPU raster broken on ES2-only Adreno 3xx drivers",
1132 "cr_bugs": [480149],
1136 "gl_renderer": "Adreno \\(TM\\) 3.*",
1142 "accelerated_2d_canvas",
1149 ); // LONG_STRING_CONST macro