New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 633286 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Email to this user bounced
Closed: Aug 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 1
Type: Bug



Sign in to add a comment

Linux AMD driver vendor incorrectly detected

Project Member Reported by cwallez@chromium.org, Aug 1 2016

Issue description

Following https://codereview.chromium.org/2153373002 driver vendor is incorrectly detected as "Context" for the following GL strings:
GL_VENDOR	ATI Technologies Inc.
GL_RENDERER	ASUS R5 230 Series
GL_VERSION	4.5.13399 Compatibility Profile Context 15.201.1151

This causes an entry in software-rendering to be hit, and the GPU gets blacklisted.

I'm adding unittests that highlight the issue so it can be fixed even without access to an AMD GPU.
 
Cc: kbr@chromium.org j.iso...@samsung.com sugoi@chromium.org zmo@chromium.org
j.isorce, can you start looking at how your previous CL could be fixed to make the unittests pass on Linux with "AMD" or "ATI" as driver vendor for the last entry? You can use "git cl patch https://codereview.chromium.org/2198923002".
Sure I will have look (I do not get notifications on this email at home)
I just found a fix, I will merge into the original CL once the revert has landed:

--- a/gpu/config/gpu_info_collector_linux.cc
+++ b/gpu/config/gpu_info_collector_linux.cc
@@ -247,6 +247,9 @@ CollectInfoResult CollectBasicGraphicsInfo(GPUInfo* gpu_info) {
 CollectInfoResult CollectDriverInfoGL(GPUInfo* gpu_info) {
   DCHECK(gpu_info);
 
+  if (!gpu_info->driver_vendor.empty() && !gpu_info->driver_version.empty())
+    return kCollectInfoSuccess;
+

Indeed there are some specific functions to retrieve driver vendor and version, like CollectDriverVersionATI and CollectDriverVersionNVidia. The extraction from the GL_VERSION should only be done when specific functions cannot be used.

Cc: cwallez@chromium.org
Owner: j.iso...@samsung.com
Revert landed, you can go ahead.
Done in "Patch Set 12" of https://codereview.chromium.org/2153373002/

Comment 6 by kbr@chromium.org, Aug 1 2016

Status: Assigned (was: Available)
Please make sure cwallez@'s new unit test has landed before attempting to reland this patch.

Comment 7 by kbr@chromium.org, Aug 1 2016

I didn't realize that the unit test in https://codereview.chromium.org/2198923002/ has been abandoned. Please figure out a way to better test https://codereview.chromium.org/2153373002/ to prevent this regression from happening in the future.

Oki I will try to make a test for that error. In the meantime I have submitted "Patch Set 13": https://codereview.chromium.org/2153373002/
Status: Fixed (was: Assigned)
Just for the log I have integrated that test (#c6) in the CL since then. The CL https://codereview.chromium.org/2153373002/ has landed so marking the issue as fixed. I keep https://bugs.chromium.org/p/chromium/issues/detail?id=628929 open to track any regression.

Sign in to add a comment