| Index: content/browser/gpu/gpu_data_manager_impl_private.cc
|
| diff --git a/content/browser/gpu/gpu_data_manager_impl_private.cc b/content/browser/gpu/gpu_data_manager_impl_private.cc
|
| index 98656dfdd68ccffbf7f02be7ae4f9f663d753a74..cf6200aba3c8a47e82a72ac5ede14fbc508fb3a4 100644
|
| --- a/content/browser/gpu/gpu_data_manager_impl_private.cc
|
| +++ b/content/browser/gpu/gpu_data_manager_impl_private.cc
|
| @@ -42,6 +42,7 @@
|
| #include "base/win/windows_version.h"
|
| #endif // OS_WIN
|
| #if defined(OS_ANDROID)
|
| +#include "base/android/build_info.h"
|
| #include "ui/gfx/android/device_display_info.h"
|
| #endif // OS_ANDROID
|
|
|
| @@ -278,12 +279,15 @@ void ApplyAndroidWorkarounds(const gpu::GPUInfo& gpu_info,
|
| bool is_nexus10 =
|
| gpu_info.machine_model.find("Nexus 10") != std::string::npos;
|
|
|
| + int sdk_int = base::android::BuildInfo::GetInstance()->sdk_int();
|
| +
|
| // IMG: avoid context switching perf problems, crashes with share groups
|
| // Mali-T604: http://crbug.com/154715
|
| // QualComm, NVIDIA: Crashes with share groups
|
| - if (is_vivante || is_img || is_mali_t604 || is_nvidia || is_qualcomm ||
|
| - is_broadcom)
|
| + if (is_vivante || is_img || is_mali_t604 ||
|
| + ((is_nvidia || is_qualcomm) && sdk_int < 18) || is_broadcom) {
|
| command_line->AppendSwitch(switches::kEnableVirtualGLContexts);
|
| + }
|
|
|
| gfx::DeviceDisplayInfo info;
|
| int default_tile_size = 256;
|
|
|