Bug 1207665 - Block Intel GMA 3150 for d3d11/d2d on all drivers. (
bug 1207665 part 1). r=jrmuizel, a=sylvestre
--- a/widget/GfxDriverInfo.cpp
+++ b/widget/GfxDriverInfo.cpp
@@ -261,16 +261,22 @@ const GfxDeviceFamily* GfxDriverInfo::Ge
break;
case Bug1116812:
APPEND_DEVICE(0x2e32);
APPEND_DEVICE(0x2a02);
break;
case Bug1155608:
APPEND_DEVICE(0x2e22); /* IntelG45_1 */
break;
+ case Bug1207665:
+ APPEND_DEVICE(0xa001); /* Intel Media Accelerator 3150 */
+ APPEND_DEVICE(0xa002);
+ APPEND_DEVICE(0xa011);
+ APPEND_DEVICE(0xa012);
+ break;
case AMDRadeonHD5800:
APPEND_DEVICE(0x6899);
break;
// This should never happen, but we get a warning if we don't handle this.
case DeviceFamilyMax:
NS_WARNING("Invalid DeviceFamily id");
break;
}
--- a/widget/GfxDriverInfo.h
+++ b/widget/GfxDriverInfo.h
@@ -86,16 +86,17 @@ enum DeviceFamily {
RadeonX1000,
Geforce7300GT,
Nvidia310M,
Nvidia8800GTS,
AMDRadeonHD5800,
Bug1137716,
Bug1116812,
Bug1155608,
+ Bug1207665,
DeviceFamilyMax
};
enum DeviceVendor {
VendorAll,
VendorIntel,
VendorNVIDIA,
VendorAMD,
--- a/widget/windows/GfxInfo.cpp
+++ b/widget/windows/GfxInfo.cpp
@@ -1025,16 +1025,28 @@ GfxInfo::GetGfxDriverInfo()
/* Disable D3D11 layers on Intel G41 express graphics and Intel GM965, Intel X3100, for causing device resets.
* See bug 1116812.
*/
APPEND_TO_DRIVER_BLOCKLIST2(DRIVER_OS_ALL,
(nsAString&) GfxDriverInfo::GetDeviceVendor(VendorIntel), (GfxDeviceFamily*) GfxDriverInfo::GetDeviceFamily(Bug1116812),
nsIGfxInfo::FEATURE_DIRECT3D_11_LAYERS, nsIGfxInfo::FEATURE_BLOCKED_DEVICE,
DRIVER_LESS_THAN, GfxDriverInfo::allDriverVersions );
+ /* Disable D3D11 layers on Intel GMA 3150 for failing to allocate a shared handle for textures.
+ * See bug 1207665. Additionally block D2D so we don't accidentally use WARP.
+ */
+ APPEND_TO_DRIVER_BLOCKLIST2(DRIVER_OS_ALL,
+ (nsAString&) GfxDriverInfo::GetDeviceVendor(VendorIntel), (GfxDeviceFamily*) GfxDriverInfo::GetDeviceFamily(Bug1207665),
+ nsIGfxInfo::FEATURE_DIRECT3D_11_LAYERS, nsIGfxInfo::FEATURE_BLOCKED_DEVICE,
+ DRIVER_LESS_THAN, GfxDriverInfo::allDriverVersions );
+ APPEND_TO_DRIVER_BLOCKLIST2(DRIVER_OS_ALL,
+ (nsAString&) GfxDriverInfo::GetDeviceVendor(VendorIntel), (GfxDeviceFamily*) GfxDriverInfo::GetDeviceFamily(Bug1207665),
+ nsIGfxInfo::FEATURE_DIRECT2D, nsIGfxInfo::FEATURE_BLOCKED_DEVICE,
+ DRIVER_LESS_THAN, GfxDriverInfo::allDriverVersions );
+
/* Disable D2D on AMD Catalyst 14.4 until 14.6
* See bug 984488
*/
APPEND_TO_DRIVER_BLOCKLIST_RANGE( DRIVER_OS_ALL,
(nsAString&) GfxDriverInfo::GetDeviceVendor(VendorATI), GfxDriverInfo::allDevices,
nsIGfxInfo::FEATURE_DIRECT2D, nsIGfxInfo::FEATURE_BLOCKED_DRIVER_VERSION,
DRIVER_BETWEEN_INCLUSIVE_START, V(14,1,0,0), V(14,2,0,0), "ATI Catalyst 14.6+");
APPEND_TO_DRIVER_BLOCKLIST_RANGE( DRIVER_OS_ALL,