Project: chromium Issues People Development process History Sign in
New issue
Advanced search Search tips
Issue 349137 Get rid of outdated gpu driver bug workarounds
Starred by 19 users Project Member Reported by zmo@chromium.org, Mar 4 2014 Back to list
Status: Fixed
Owner:
Closed: May 2015
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug



Sign in to add a comment
Just tested with MacOSX 10.9 with Intel/NVIDIA/AMD gpus, most workarounds are no longer necessary as the driver bugs have been fixed.

It would be nice to clean up the house once in a while.

Need to check Linux and Windows and do the same.
 
Project Member Comment 1 by bugdroid1@chromium.org, Mar 9 2014
------------------------------------------------------------------------
r255833 | zmo@chromium.org | 2014-03-09T07:09:00.902211Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/gpu/config/gpu_driver_bug_list_json.cc?r1=255833&r2=255832&pathrev=255833

Clean up outdated gpu driver bug workarounds for Mac 10.9

Tested with NVIDIA, AMD, Intel HD 3000/4000

Actually I also tested with 10.8.5, but at this point I don't
think it's worth making any changes on 10.8.5.

BUG= 349137 
TEST=
R=kbr@chromium.org

Review URL: https://codereview.chromium.org/189263017
------------------------------------------------------------------------
Please, do the same on Linux. There are worlds of difference between Mesa 8.x and Mesa 10.0 or 10.1 when it comes to support properly AMD GPUs.

On a related note, please, for the love of whatever you care about most, DO NOT APPLY THE SAME WORKAROUNDS TO MESA/RADEON AND CATALYST. Those are two completely different beasts, with two different sets of bugs, and even two possible courses of action (Catalyst: workaround; Mesa: file a bug upstream and workaround, keeping track of the workaround because the bug may be fixed)
Comment 3 by zmo@chromium.org, Mar 17 2014
@alejandronova:

Can you provide about:gpu content on whatever linux machines you have with AMD drive?

I'd love to separate the two group of drivers for Linux AMD, but don't have the time to install and test out mesa drivers.
My AMD-Linux machine is an E-450 (Radeon HD 6320 Wrestler), with Mesa 10.0.4. about:gpu is attached. I'm using Chrome 35 normally with no blacklist, but I reenabled the blacklist to send my report.

Here's what I have to comment.

"ATI/AMD cards with older or third-party drivers in Linux are crash-prone. Disabled features: ALL"
- Issue 71381: Filed on January 2011, against Catalyst. Doesn't affect me.
- Issue 76428: March 2011, against Mesa 7.something. I've never seen that.
- Issue 73910: February 2011, against Mesa 7.something. Ditto.
- Issue 101225: October 2011, against Catalyst. Unblacklist. Doesn't affect Mesa.
- Issue 136240: July 2012. Blacklist some Catalyst releases. Doesn't affect Mesa.

"Accelerated 2d canvas is unstable in Linux at the moment
Disabled Features: accelerated_2d_canvas"
Chrome 35 runs well here.

"Clear uniforms before first program use on all platforms: 124764, >349137<
Applied Workarounds: clear_uniforms_before_first_program_use
Mesa drivers in Linux handle varyings without static use incorrectly: 333885
Applied Workarounds: count_all_in_varyings_packing
Linux AMD drivers incorrectly return initial value of 1 for TEXTURE_MAX_ANISOTROPY: 348237
Applied Workarounds: init_texture_max_anisotropy"
Those are the only workarounds that Chrome applies when I unblacklist my card.

amd
7.6 KB View Download
Google Chrome 35 with the "Disable GPU blacklist" flag enabled.

If you can, please, institute as an automated policy that every GPU blacklist related to Mesa expires in a year. Mesa 10.1 is expected to expose OpenGL 3.3 to all R600 and RadeonSI users (Radeon HD 2000 to Radeon R9 series)
amd2
7.0 KB View Download
Comment 7 by zmo@chromium.org, Mar 25 2014
Thanks for providing the information.  I can definitely whitelist AMD with newer Mesa drivers.
Comment 8 by zmo@chromium.org, Mar 31 2014
Enabled AMD with newer mesa drivers.  See crbug.com/357314
Comment 9 by zmo@chromium.org, May 7 2015
Status: Fixed
I think I cleaned up most of them. The remaining's removal might cause some risk that it's still affecting some users, so closing this for now.
I still see:
Linux AMD drivers incorrectly return initial value of 1 for TEXTURE_MAX_ANISOTROPY: 348237
Applied Workarounds: init_texture_max_anisotropy

(https://code.google.com/p/chromium/issues/detail?id=348237)

But I'm using the mesa drivers, not the AMD ones.
chrome_gpu.txt
9.7 KB View Download
Project Member Comment 11 by bugdroid1@chromium.org, Apr 11 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/angle/angle/+/4091119bc4913cdb22f720ee0b3f71db5c8a3ca8

commit 4091119bc4913cdb22f720ee0b3f71db5c8a3ca8
Author: Philippe Hamel <hamelphi@google.com>
Date: Thu Apr 07 20:45:50 2016

Add workaround to always call useProgram after a successful link.

This workaround is meant to reproduce the behavior of the
use_current_program_after_successful_link workaround in
Chromium (http://crbug.com/110263)

The workaround was shown to be unnecessary for MacOSX 10.9 and
higher (http://crrev.com/39eb535b).

BUG= 349137 

Change-Id: I3023f053aa1593ba7044a889dd47746b8f7e0581
Reviewed-on: https://chromium-review.googlesource.com/337780
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>

[modify] https://crrev.com/4091119bc4913cdb22f720ee0b3f71db5c8a3ca8/src/libANGLE/renderer/gl/ProgramGL.cpp
[modify] https://crrev.com/4091119bc4913cdb22f720ee0b3f71db5c8a3ca8/src/libANGLE/renderer/gl/StateManagerGL.h
[modify] https://crrev.com/4091119bc4913cdb22f720ee0b3f71db5c8a3ca8/src/libANGLE/renderer/gl/RendererGL.cpp
[modify] https://crrev.com/4091119bc4913cdb22f720ee0b3f71db5c8a3ca8/src/libANGLE/renderer/gl/renderergl_utils.cpp
[modify] https://crrev.com/4091119bc4913cdb22f720ee0b3f71db5c8a3ca8/src/libANGLE/renderer/gl/StateManagerGL.cpp
[modify] https://crrev.com/4091119bc4913cdb22f720ee0b3f71db5c8a3ca8/src/libANGLE/renderer/gl/ProgramGL.h
[modify] https://crrev.com/4091119bc4913cdb22f720ee0b3f71db5c8a3ca8/src/libANGLE/renderer/gl/WorkaroundsGL.h

Project Member Comment 12 by bugdroid1@chromium.org, Apr 12 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fb8e85d5fa76718e228e17f05f93c6b9664c46f7

commit fb8e85d5fa76718e228e17f05f93c6b9664c46f7
Author: geofflang <geofflang@chromium.org>
Date: Tue Apr 12 19:37:31 2016

Roll ANGLE d4102f0..52b09c2

https://chromium.googlesource.com/angle/angle.git/+log/d4102f0..52b09c2

BUG= 349137 ,600758

TBR=cwallez@chromium.org

TEST=bots

CQ_INCLUDE_TRYBOTS=tryserver.chromium.win:win_optional_gpu_tests_rel;tryserver.chromium.mac:mac_optional_gpu_tests_rel;tryserver.chromium.linux:linux_optional_gpu_tests_rel

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

Cr-Commit-Position: refs/heads/master@{#386764}

[modify] https://crrev.com/fb8e85d5fa76718e228e17f05f93c6b9664c46f7/DEPS

Hi, it's me again. It's time for another round of GPU workaround pruning, since all my Intel and AMD powered boxes have Mesa 11.2.1 and lots of bugs have been fixed.

This is how I'm running with an old Intel machine, Core 2 Duo E4400 Conroe, G33 chipset. You see that, save for the native GPU buffers (not supported on this chipset, too old) and GPU rasterization (the same, also, super buggy), I'm running with no workarounds, and Chromium runs fantastic.

On a related note, I got similar results with my laptop, Core i5-4210Y and Intel HD 4200 Graphics (Haswell). No workarounds, I have enabled native GPU buffers, and GPU rasterization is still buggy, and so, rightly disabled. 

I'm attaching the chrome://gpu output for my old Intel machine.
alvos
6.6 KB View Download
Sign in to add a comment