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.*",
340 "description": "Accelerated 2d canvas is disabled on Windows systems with low perf stats",
341 "cr_bugs": [116350, 151500],
357 "cpu_info": "(?i).*Atom.*"
361 "accelerated_2d_canvas"
366 "description": "S3 Trio (used in Virtual PC) is not compatible",
371 "vendor_id": "0x5333",
372 "device_id": ["0x8811"],
379 "description": "Stage3D is not supported on Linux",
390 "description": "Older drivers are unreliable for Optimus on Linux",
391 "cr_bugs": [131308, 363418],
395 "multi_gpu_style": "optimus",
398 "driver_vendor": "Mesa",
403 "gl_vendor": "Intel.*"
412 "description": "Accelerated 2D canvas is unstable for NVidia GeForce 9400M on Lion",
421 "vendor_id": "0x10de",
422 "device_id": ["0x0863"],
424 "accelerated_2d_canvas"
429 "description": "AMD Radeon HD 6490M and 6970M on Snow Leopard are buggy",
430 "cr_bugs": [137307, 285350],
438 "vendor_id": "0x1002",
439 "device_id": ["0x6760", "0x6720"],
446 "description": "Intel HD 4000 causes kernel panic on Lion",
456 "vendor_id": "0x8086",
457 "device_id": ["0x0166"],
458 "multi_gpu_category": "any",
465 "description": "Parallels drivers older than 7 are buggy",
470 "vendor_id": "0x1ab8",
481 "description": "ATI FireMV 2400 cards on Windows are buggy",
486 "vendor_id": "0x1002",
487 "device_id": ["0x3151"],
494 "description": "NVIDIA linux drivers older than 295.* are assumed to be buggy",
499 "vendor_id": "0x10de",
500 "driver_vendor": "NVIDIA",
511 "description": "Accelerated video decode is unavailable on Linux",
517 "accelerated_video_decode"
522 "description": "NVidia GeForce GT 650M can cause the system to hang with flash 3D",
532 "multi_gpu_style": "optimus",
533 "vendor_id": "0x10de",
534 "device_id": ["0x0fd5"],
542 "description": "Disable VMware software renderer on older Mesa",
543 "cr_bugs": [145531, 332596],
547 "gl_vendor": "VMware.*",
550 "driver_vendor": "Mesa",
555 "gl_renderer": ".*SVGA3D.*"
564 "description": "The Intel GMA500 is too slow for Stage3D",
566 "vendor_id": "0x8086",
567 "device_id": ["0x8108", "0x8109"],
574 "description": "NVIDIA linux drivers are unstable when using multiple Open GL contexts and with low memory",
579 "vendor_id": "0x10de",
580 "driver_vendor": "NVIDIA",
582 "accelerated_video_decode",
588 // Panel fitting is only used with OS_CHROMEOS. To avoid displaying an
589 // error in chrome:gpu on every other platform, this blacklist entry needs
590 // to only match on chromeos. The drawback is that panel_fitting will not
591 // appear to be blacklisted if accidentally queried on non-chromeos.
593 "description": "Chrome OS panel fitting is only supported for Intel IVB and SNB Graphics Controllers",
599 "vendor_id": "0x8086",
600 "device_id": ["0x0106", "0x0116", "0x0166"]
609 "description": "NVidia driver 8.15.11.8593 is crashy on Windows",
614 "vendor_id": "0x10de",
617 "value": "8.15.11.8593"
620 "accelerated_video_decode"
625 "description": "Hardware video decode is only supported in win7+",
635 "accelerated_video_decode"
640 "description": "VMware Fusion 4 has corrupt rendering with Win Vista+",
649 "vendor_id": "0x15ad",
652 "value": "7.14.1.1134"
660 "description": "NVIDIA driver 8.17.11.9621 is buggy with Stage3D baseline mode",
665 "vendor_id": "0x10de",
668 "value": "8.17.11.9621"
671 "flash_stage3d_baseline"
676 "description": "NVIDIA driver 8.17.11.8267 is buggy with Stage3D baseline mode",
681 "vendor_id": "0x10de",
684 "value": "8.17.11.8267"
687 "flash_stage3d_baseline"
692 "description": "All Intel drivers before 8.15.10.2021 are buggy with Stage3D baseline mode",
697 "vendor_id": "0x8086",
700 "value": "8.15.10.2021"
703 "flash_stage3d_baseline"
708 "description": "NVIDIA GeForce 6200 LE is buggy with WebGL",
713 "vendor_id": "0x10de",
714 "device_id": ["0x0163"],
721 "description": "WebGL is buggy with the NVIDIA GeForce GT 330M, 9400, and 9400M on MacOSX earlier than 10.8",
730 "vendor_id": "0x10de",
731 "device_id": ["0x0a29", "0x0861", "0x0863"],
738 "description": "GPU access is blocked if users don't have proper graphics driver installed after Windows installation",
743 "driver_vendor": "Microsoft",
746 "vendor_id": "0x1414",
747 "device_id": ["0x02c1"]
754 ) // String split to avoid MSVC char limit.
758 "description": "WebGL is disabled on Android unless GPU reset notification is supported",
764 "gl_reset_notification_strategy": {
770 "gl_renderer": "Mali-400.*",
771 "gl_extensions": ".*EXT_robustness.*"
780 "description": "Accelerated video decode interferes with GPU sandbox on older Intel drivers",
781 "cr_bugs": [180695, 298968, 436968],
785 "vendor_id": "0x8086",
788 "value": "8.15.10.2702"
791 "accelerated_video_decode"
796 "description": "Disable GPU on all Windows versions prior to and including Vista",
811 "description": "Apple software renderer used under VMWare hangs on Mac OS 10.6 and 10.7",
820 "vendor_id": "0x15ad",
827 "description": "MediaCodec is still too buggy to use for encoding (b/11536167)",
832 "accelerated_video_encode"
837 "description": "Samsung Galaxy NOTE is too buggy to use for video decoding",
846 "machine_model_name": ["GT-.*"],
848 "accelerated_video_decode"
853 "description": "Samsung Galaxy S4 is too buggy to use for video decoding",
862 "machine_model_name": ["SCH-.*"],
864 "accelerated_video_decode"
869 "description": "Intel Graphics Media Accelerator 3150 causes the GPU process to hang running WebGL",
874 "vendor_id": "0x8086",
875 "device_id": ["0xa011"],
882 "description": "Accelerated video decode on Intel driver 10.18.10.3308 is incompatible with the GPU sandbox",
887 "vendor_id": "0x8086",
890 "value": "10.18.10.3308"
893 "accelerated_video_decode"
898 "description": "Accelerated video decode on AMD driver 13.152.1.8000 is incompatible with the GPU sandbox",
903 "vendor_id": "0x1002",
906 "value": "13.152.1.8000"
909 "accelerated_video_decode"
914 "description": "Accelerated video decode interferes with GPU sandbox on certain AMD drivers",
919 "vendor_id": "0x1002",
922 "value": "8.810.4.5000",
923 "value2": "8.970.100.1100"
926 "accelerated_video_decode"
931 "description": "Accelerated video decode interferes with GPU sandbox on certain NVIDIA drivers",
936 "vendor_id": "0x10de",
939 "value": "8.17.12.5729",
940 "value2": "8.17.12.8026"
943 "accelerated_video_decode"
948 "description": "Accelerated video decode interferes with GPU sandbox on certain NVIDIA drivers",
953 "vendor_id": "0x10de",
956 "value": "9.18.13.783",
957 "value2": "9.18.13.1090"
960 "accelerated_video_decode"
965 "description": "Accelerated video decode does not work with the discrete GPU on AMD switchables",
970 "multi_gpu_style": "amd_switchable_discrete",
972 "accelerated_video_decode"
977 "description": "GLX indirect rendering (X remoting) is not supported",
982 "direct_rendering": false,
989 "description": "Intel driver version 8.15.10.1749 causes GPU process hangs.",
994 "vendor_id": "0x8086",
997 "value": "8.15.10.1749"
1005 "description": "AMD driver version 13.101 is unstable on linux.",
1006 "cr_bugs": [363378],
1010 "vendor_id": "0x1002",
1011 "driver_vendor": ".*AMD.*",
1022 "description": "Blacklist GPU raster/canvas on all except known good GPUs and newer Android releases",
1023 "cr_bugs": [362779,424970],
1032 "gl_renderer": "Adreno (TM) 3.*"
1038 "gl_renderer": "NVIDIA.*"
1044 "gl_renderer": "VideoCore IV.*"
1050 "gl_renderer": "Immersion.*"
1077 "gpu_rasterization",
1078 "accelerated_2d_canvas"
1083 "description": "GPU rasterization is blacklisted on non-Android",
1084 "cr_bugs": [362779],
1098 "description": "GPU rasterization and canvas is blacklisted on Nexus 10",
1099 "cr_bugs": [407144],
1103 "gl_renderer": ".*Mali-T604.*",
1105 "gpu_rasterization",
1106 "accelerated_2d_canvas"
1111 "description": "Samsung Galaxy Tab is too buggy to use for video decoding",
1112 "cr_bugs": [408353],
1120 "machine_model_name": ["SM-.*"],
1122 "accelerated_video_decode"
1127 "description": "Accelerated 2D canvas and Ganesh broken on Galaxy Tab 2",
1128 "cr_bugs": [416910],
1132 "gl_renderer": "PowerVR SGX 540",
1134 "accelerated_2d_canvas",
1140 "description": "Intel GM965/GL960 crash often on Mac OS 10.6",
1141 "cr_bugs": [421641],
1149 "vendor_id": "0x8086",
1150 "device_id": ["0x2a02"],
1157 "description": "GPU raster broken on PowerVR Rogue",
1158 "cr_bugs": [436331],
1166 "gl_renderer": "PowerVR Rogue.*",
1168 "accelerated_2d_canvas",
1175 ); // LONG_STRING_CONST macro