Bug 110721 - graphics corruption on steam client with mesa 19.1.0 rc3 on polaris
Summary: graphics corruption on steam client with mesa 19.1.0 rc3 on polaris
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/radeonsi (show other bugs)
Version: 19.1
Hardware: Other All
: medium normal
Assignee: Default DRI bug account
QA Contact: Default DRI bug account
URL:
Whiteboard:
Keywords:
: 110736 110759 110787 110803 110981 (view as bug list)
Depends on:
Blocks:
 
Reported: 2019-05-21 22:37 UTC by alvarex
Modified: 2019-06-25 14:55 UTC (History)
5 users (show)

See Also:
i915 platform:
i915 features:


Attachments
dmesg (84.99 KB, text/plain)
2019-05-21 22:37 UTC, alvarex
Details

Description alvarex 2019-05-21 22:37:14 UTC
Created attachment 144315 [details]
dmesg

it started happening with rc3.
Mesa compiled with llvm8
it happens both with the beta and stable channel.

https://i.imgur.com/7g2EK1G.png

Opensuse 15.0
Kernel 4.19.42
Radeon rx460 4gb
Comment 1 Ropid 2019-05-22 02:41:45 UTC
I get similar corruption in Chromium and Visual Studio Code with Mesa 19.1.0-rc3. There was no problem with 19.1.0-rc2.

This is on Archlinux, kernel 5.1.3, the card is an RX480. I tried compiling Mesa with both LLVM 8 and 9 (r360929).

It's very visible in Chromium when Chromium is started with parameters that enable its hardware acceleration:

chromium \
--ignore-gpu-blacklist \
--enable-gpu-rasterization \
--enable-native-gpu-memory-buffers \
--enable-zero-copy \
--disable-gpu-driver-bug-workarounds
Comment 2 alvarex 2019-05-22 12:37:32 UTC
now the bug has hit 19.0.5. There is a fix for steam if you uncheck "Enable Gpu accelarated rendering in web views"
Comment 3 Eric Engestrom 2019-05-22 13:57:59 UTC
(In reply to alvarex from comment #2)
> now the bug has hit 19.0.5.

Are you saying the bug was not present in 19.0.4, but is now present in 19.0.5?

If so, that's only 22 new commits, 10 if you exclude obvious non-candidates.

If you can reliably test this, that's at most 5 build & test you need to do when bisecting mesa-19.0.4..mesa-19.0.5; could you do this please? It would greatly help figure out the cause :)
Comment 4 alvarex 2019-05-22 14:23:00 UTC
yes the bug was not present on 19.0.4.
I'll give it a shot, I don't compile mesa from git in a standard way, I compile it on opensuse build service.
Comment 5 alvarex 2019-05-22 16:07:06 UTC
I need help, I build up mesa and set the git bisect good and bad commits, but steam does not start because it needs 32bits libs and I can't seem to build them. What option should I pass to meson or ninja to compile 32 bit? I can't trigger the bug on chrome, chrome or chromium do launch but the bug doesn't trigger . @Ropid what do you mean with Visual Studio Code? where should I find that extension?
Comment 6 Ropid 2019-05-22 16:19:00 UTC
@alvarex:

Try starting chromium with this command line here, it makes it show corruption everywhere for me here:

chromium --ignore-gpu-blacklist --enable-gpu-rasterization --enable-native-gpu-memory-buffers --enable-zero-copy --disable-gpu-driver-bug-workarounds

About Visual Studio Code, I see corruption when I click on the main menu and move the mouse around to open and close the different menus there.
Comment 7 alvarex 2019-05-22 16:26:12 UTC
(In reply to Ropid from comment #6)
> @alvarex:
> 
> Try starting chromium with this command line here, it makes it show
> corruption everywhere for me here:
> 
> chromium --ignore-gpu-blacklist --enable-gpu-rasterization
> --enable-native-gpu-memory-buffers --enable-zero-copy
> --disable-gpu-driver-bug-workarounds
> 
> About Visual Studio Code, I see corruption when I click on the main menu and
> move the mouse around to open and close the different menus there.

no the bug doesn't trigger with chromium unless this error has something to do maybe chrome is not detecting the gpu (same as steam)

> ac: Unknown GPU, using 0 for raster_config
> [1:7:0522/132124.876161:ERROR:command_buffer_proxy_impl.cc(125)] 
> ContextResult::kTransientFailure: Failed to send 
> GpuChannelMsg_CreateCommandBuffer.
> [31337:31346:0522/132131.668335:ERROR:browser_process_sub_thread.cc(217)] 
> Waited 322 ms for network service



@Ropid
what version of chromium are u using??
Comment 8 Ropid 2019-05-22 16:31:28 UTC
$ chromium --version
Chromium 74.0.3729.157 Arch Linux
Comment 9 Pierre-Eric Pelloux-Prayer 2019-05-22 16:49:35 UTC
> (In reply to Ropid from comment #6)
> @alvarex:
> 
> Try starting chromium with this command line here, it makes it show
> corruption everywhere for me here:
> 
> chromium --ignore-gpu-blacklist --enable-gpu-rasterization
> --enable-native-gpu-memory-buffers --enable-zero-copy
> --disable-gpu-driver-bug-workarounds
> 

Same here so I did a bisect.
There are 2 problematic commits, making the bisect a bit more complicated.

The first one has already been solved by d6053bf2a170.
The second one is 811fa9a79cf ("mesa: unreference current winsys buffers when unbinding winsys buffers"). 

Using master + this commit reverted: no more corruption in chromium.
Comment 10 alvarex 2019-05-22 17:35:26 UTC
(In reply to Pierre-Eric Pelloux-Prayer from comment #9)
> > (In reply to Ropid from comment #6)
> > @alvarex:
> > 
> > Try starting chromium with this command line here, it makes it show
> > corruption everywhere for me here:
> > 
> > chromium --ignore-gpu-blacklist --enable-gpu-rasterization
> > --enable-native-gpu-memory-buffers --enable-zero-copy
> > --disable-gpu-driver-bug-workarounds
> > 
> 
> Same here so I did a bisect.
> There are 2 problematic commits, making the bisect a bit more complicated.
> 
> The first one has already been solved by d6053bf2a170.
> The second one is 811fa9a79cf ("mesa: unreference current winsys buffers
> when unbinding winsys buffers"). 
> 
> Using master + this commit reverted: no more corruption in chromium.

for me it doesn't happen on chrome with 64 bits libs, (I couldn't compile 32bits) I tried several versions of chrome, but not that precise one. not sure if it is the same bug. what version of chrome does steam use?
Comment 11 alvarex 2019-05-22 17:39:43 UTC
> The second one is 811fa9a79cf ("mesa: unreference current winsys buffers
>  when unbinding winsys buffers"). 
>  


I'm going to try reverting that commit and building anyway.(In reply to alvarex
Comment 12 alvarex 2019-05-22 18:59:04 UTC
it is the same bug, it is fixed!
Comment 13 Mathieu Belanger 2019-05-23 19:02:45 UTC
That bug was affecting Discord, Brave and Chromium.

Fixed by reverting : 811fa9a79cf
Comment 14 Mathieu Belanger 2019-05-23 19:04:33 UTC
*** Bug 110736 has been marked as a duplicate of this bug. ***
Comment 15 alvarex 2019-05-23 19:23:57 UTC
 
> 
> Using master + this commit reverted: no more corruption in chromium.

I reverted the commit on 19.1.0 rc3 and it works as well.
Comment 16 Jan Ziak (http://atom-symbol.net) 2019-05-23 21:38:25 UTC
I confirm that reverting "mesa: unreference current winsys buffers when unbinding winsys buffers" fixes the rendering issues in Spotify and Visual Studio Code.

Thanks.
Comment 17 Doug Ty 2019-05-25 07:54:35 UTC
19.0.5 also completely broke Blender 2.8 for me, which now crashes whenever I select any geometry in edit more. 19.0.4 was fine.

Can confirm that building master & reverting "mesa: unreference current winsys buffers when unbinding winsys buffers" fixes the issues for me -- both with Blender crashing as well as the previously mentioned render glitches in Chromium & Electron based programs.
Comment 18 Doug Ty 2019-05-25 09:17:26 UTC
*** Bug 110759 has been marked as a duplicate of this bug. ***
Comment 19 Alex Deucher 2019-05-29 13:35:23 UTC
*** Bug 110787 has been marked as a duplicate of this bug. ***
Comment 20 alvarex 2019-05-30 16:21:16 UTC
this is fixed on 19.1.0-rc4 closing, the bug is still pending an update to the 19.0 stable branch
Comment 21 diplosarus 2019-06-18 21:09:57 UTC
*** Bug 110803 has been marked as a duplicate of this bug. ***
Comment 22 Michel Dänzer 2019-06-25 14:55:46 UTC
*** Bug 110981 has been marked as a duplicate of this bug. ***


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.