Commit 0b5421bd authored by epenner@chromium.org's avatar epenner@chromium.org

GPU: Use virtual contexts on NVidia.

They asked for this since optimizing MakeCurrent will take
significantly longer.

BUG=369316

Review URL: https://codereview.chromium.org/269593008

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268029 0039d316-1c4b-4281-b951-d872f2087c98
parent 9494bbd9
......@@ -237,9 +237,17 @@ void DisplayReconfigCallback(CGDirectDisplayID display,
#if defined(OS_ANDROID)
void ApplyAndroidWorkarounds(const gpu::GPUInfo& gpu_info,
CommandLine* command_line) {
CommandLine* command_line,
std::set<int>* workarounds) {
std::string vendor(StringToLowerASCII(gpu_info.gl_vendor));
std::string renderer(StringToLowerASCII(gpu_info.gl_renderer));
std::string version(StringToLowerASCII(gpu_info.gl_version));
if (vendor.find("nvidia") != std::string::npos &&
version.find("3.1") != std::string::npos) {
workarounds->insert(gpu::USE_VIRTUALIZED_GL_CONTEXTS);
}
bool is_img =
gpu_info.gl_vendor.find("Imagination") != std::string::npos;
......@@ -988,7 +996,8 @@ void GpuDataManagerImplPrivate::InitializeImpl(
UpdatePreliminaryBlacklistedFeatures();
#if defined(OS_ANDROID)
ApplyAndroidWorkarounds(gpu_info, CommandLine::ForCurrentProcess());
ApplyAndroidWorkarounds(
gpu_info, CommandLine::ForCurrentProcess(), &gpu_driver_bugs_);
#endif // OS_ANDROID
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment