Bug 84836

Summary: VERDE lockup with Unigine Valley/Heaven if ARB_sample_shading is enabled
Product: Mesa Reporter: Alexander Tsoy <alexander>
Component: Drivers/Gallium/radeonsiAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: dmesg output

Description Alexander Tsoy 2014-10-09 13:21:35 UTC
Created attachment 107614 [details]
dmesg output

Unigine Valley 1.0 and Heaven 4.0 cause VERDE GPU lockup when ARB_sample_shading is enabled. With kernel 3.14.19 I got immediate lockup. 3.14.20 allows Valley and Heaven to run for up to 1 min. GPU fails to resume after lockup, screen becomes corrupted and I need to reboot the system.

If I disable ARB_sample_shading (via env variable MESA_EXTENSION_OVERRIDE=-GL_ARB_sample_shading) then VERDE GPU do not hang at all (currently valley is running on my system for more than two hours without lockups).

I also have BONAIRE GPU and it does not hang.


Software versions:

kernel-3.14.20
mesa-10.3.0
llvm-3.5
xf86-video-ati 7.4.0
libdrm-2.4.56
Comment 1 Michel Dänzer 2014-10-10 02:57:07 UTC
Seems to work fine on my Cape Verde. What brand and model do you have specifically?

Can you try a newer kernel?
Comment 2 Alexander Tsoy 2014-10-10 07:22:10 UTC
(In reply to Michel Dänzer from comment #1)
> Seems to work fine on my Cape Verde. What brand and model do you have
> specifically?

Gigabyte GV-R775OC-2GI. And if that matters, it's a revision with Micron memory, flashed with latest available BIOS version F3.

> 
> Can you try a newer kernel?

I'll try 3.16 and 3.17 kernels next week.
Comment 3 Marek Olšák 2014-10-12 13:18:48 UTC
I think you forgot to install drirc from Mesa. What happens if you set this env var?

allow_glsl_extension_directive_midshader=true
Comment 4 Alexander Tsoy 2014-10-13 18:48:49 UTC
(In reply to Marek Olšák from comment #3)
> I think you forgot to install drirc from Mesa. What happens if you set this
> env var?

No, I have correct drirc.

> 
> allow_glsl_extension_directive_midshader=true

Setting this env variable doesn't help.


(In reply to Michel Dänzer from comment #1)

> Can you try a newer kernel?

I just tried 3.17.0:

- GPU still hangs if ARB_sample_shading is not disabled.

- It seems lockup detection timeout was increased significantly:

kernel: radeon 0000:01:00.0: ring 0 stalled for more than 91985msec
kernel: radeon 0000:01:00.0: GPU lockup (waiting for 0x000000000000e90a last fence id 0x000000000000e8fb on ring 0)

- Unrelated to this bug, but.. animation is VERY choppy. I constantly see several-seconds-long freezes, and sometimes >10 sec long freezes.
Comment 5 Michel Dänzer 2014-10-15 06:28:11 UTC
(In reply to Alexander Tsoy from comment #4)
> - Unrelated to this bug, but.. animation is VERY choppy. I constantly see
> several-seconds-long freezes, and sometimes >10 sec long freezes.

Should be better with current Mesa Git master, see bug 84662.
Comment 6 Marek Olšák 2015-02-06 17:07:14 UTC
Not sure what fixed this, but there is no GPU hang anymore. I also disabled the drirc workaround, so that Heaven would fail to compile its shaders. Tested on my VERDE.
Comment 7 Alexander Tsoy 2017-07-24 00:39:13 UTC
(In reply to Alexander Tsoy from comment #2)
> (In reply to Michel Dänzer from comment #1)
> > Seems to work fine on my Cape Verde. What brand and model do you have
> > specifically?
> 
> Gigabyte GV-R775OC-2GI.

JFYI: This card was unstable when operating at 850Mhz sclk (same problem on Windows). After flashing VBIOS from GV-R775D3-2GI (same card physically, but with 800MHz sclk) it works fine now. So this looks like a faulty vendor overclock.

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.