зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1773128 - Block webrender on several PowerVR GPUs due to crash. r=gfx-reviewers,nical
There is a crash in glFenceSync (used to recycle PBOs when uploading textures) affecting several PowerVR GPUs. Block webrender on the known bad combinations of GPU and driver versions. Differential Revision: https://phabricator.services.mozilla.com/D148638
This commit is contained in:
Родитель
808558c301
Коммит
30384c7460
|
@ -570,6 +570,18 @@ nsresult GfxInfo::GetFeatureStatusImpl(
|
||||||
mGLStrings->Renderer().Find("Vivante GC7000UL",
|
mGLStrings->Renderer().Find("Vivante GC7000UL",
|
||||||
/* ignoreCase */ true) >= 0;
|
/* ignoreCase */ true) >= 0;
|
||||||
|
|
||||||
|
const bool isPowerVrFenceSyncCrash =
|
||||||
|
(mGLStrings->Renderer().Find("PowerVR Rogue G6200",
|
||||||
|
/* ignoreCase */ true) >= 0 ||
|
||||||
|
mGLStrings->Renderer().Find("PowerVR Rogue G6430",
|
||||||
|
/* ignoreCase */ true) >= 0 ||
|
||||||
|
mGLStrings->Renderer().Find("PowerVR Rogue GX6250",
|
||||||
|
/* ignoreCase */ true) >= 0) &&
|
||||||
|
(mGLStrings->Version().Find("3283119", /* ignoreCase */ true) >= 0 ||
|
||||||
|
mGLStrings->Version().Find("3443629", /* ignoreCase */ true) >= 0 ||
|
||||||
|
mGLStrings->Version().Find("3573678", /* ignoreCase */ true) >= 0 ||
|
||||||
|
mGLStrings->Version().Find("3830101", /* ignoreCase */ true) >= 0);
|
||||||
|
|
||||||
if (isMali4xx) {
|
if (isMali4xx) {
|
||||||
// Mali 4xx does not support GLES 3.
|
// Mali 4xx does not support GLES 3.
|
||||||
*aStatus = nsIGfxInfo::FEATURE_BLOCKED_DEVICE;
|
*aStatus = nsIGfxInfo::FEATURE_BLOCKED_DEVICE;
|
||||||
|
@ -582,6 +594,10 @@ nsresult GfxInfo::GetFeatureStatusImpl(
|
||||||
// Blocked on Vivante GC7000UL due to bug 1719327.
|
// Blocked on Vivante GC7000UL due to bug 1719327.
|
||||||
*aStatus = nsIGfxInfo::FEATURE_BLOCKED_DEVICE;
|
*aStatus = nsIGfxInfo::FEATURE_BLOCKED_DEVICE;
|
||||||
aFailureId = "FEATURE_FAILURE_VIVANTE_GC7000UL";
|
aFailureId = "FEATURE_FAILURE_VIVANTE_GC7000UL";
|
||||||
|
} else if (isPowerVrFenceSyncCrash) {
|
||||||
|
// Blocked on various PowerVR GPUs due to bug 1773128.
|
||||||
|
*aStatus = nsIGfxInfo::FEATURE_BLOCKED_DEVICE;
|
||||||
|
aFailureId = "FEATURE_FAILURE_POWERVR_FENCE_SYNC_CRASH";
|
||||||
} else {
|
} else {
|
||||||
*aStatus = nsIGfxInfo::FEATURE_ALLOW_QUALIFIED;
|
*aStatus = nsIGfxInfo::FEATURE_ALLOW_QUALIFIED;
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче