Bug 57410

Summary: [965gm] incomplete rendering
Product: xorg Reporter: Deve <deveee>
Component: Driver/intelAssignee: Chris Wilson <chris>
Status: RESOLVED FIXED QA Contact: Intel GFX Bugs mailing list <intel-gfx-bugs>
Severity: normal    
Priority: medium    
Version: 7.7 (2012.06)   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Screenshot 1
none
Screenshot 2
none
screenshot from intel 2.20.15 none

Description Deve 2012-11-22 13:48:49 UTC
Look in attachments. When I move cards, sometimes I see that. I noticed it only in SNA acceleration.

xserver-xorg-video-intel 2.20.13
mesa 9.0.1
linux-image 3.6.7
libdrm 2.4.40
openbox 3.5
Comment 1 Deve 2012-11-22 13:49:17 UTC
Created attachment 70430 [details]
Screenshot 1
Comment 2 Deve 2012-11-22 13:49:45 UTC
Created attachment 70431 [details]
Screenshot 2
Comment 3 Chris Wilson 2012-11-22 13:52:51 UTC
GPU? I think you have an 965gm, in which case you need:

commit d2897cb0136ffec83365c7530ed544b562cac478
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Tue Nov 13 12:43:44 2012 +0000

    sna/gen4,5: Fix the opacity shader to use the right vertex attribute
    
    Reported-by: Edward Sheldrake <ejsheldrake@gmail.com>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57054
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

Can you please test with the current -intel.git?
Comment 4 Deve 2012-11-22 15:58:13 UTC
You know everything about it what I have and what I need ;-) Yes, I have 965GM ant it's this commit.

I tested current git drivers. Now is much better, almost OK. I see it still, but it is rarely.
Comment 5 Chris Wilson 2012-11-22 16:07:23 UTC
Is the current presentation the same as in the screenshots? Is it stable, i.e. does it flicker upon redraw?

Just wondering if this is now something closer to bug 55500.
Comment 6 Deve 2012-11-22 16:22:03 UTC
It doesn't flicker. Looks like that on screenshots. It is the most easy to see, when I have big cards and move them fast.
Comment 7 Chris Wilson 2012-12-03 11:13:18 UTC
I've just attacked gen4 again, mind giving 2.20.15 a test?
Comment 8 Deve 2012-12-03 18:18:24 UTC
Created attachment 70974 [details]
screenshot from intel 2.20.15

Still the same...
Comment 9 Chris Wilson 2012-12-03 20:56:00 UTC
Can you please give me a step-by-step guide to reproducing this? As it looks like a single drawing pass, it might be easy to isolate the glitch and find a workaround.
Comment 10 Deve 2012-12-03 21:16:46 UTC
1. Run "sol" from gnome-games. I use version 2.30.2
2. Run soltaire, where you have big cards. I run valentine. Better will be maximized window.
3. Push a card and move it fast above other cards. Then you can see that what on screenshot.
Comment 11 Chris Wilson 2012-12-04 11:35:35 UTC
The likelihood of corruption seems proportional to the number of sf threads running, though corruption is still seen (rarely) with only a single sf thread. In contrast, corruption is still easily hit with a single wm thread.

This looks like we are still fighting the earlier broken sf shaders/unit.
Comment 12 Chris Wilson 2012-12-04 13:11:06 UTC
This hack cures most of the corruption, though I still see a rare glitch:

commit 626dd1324dd2c5b14ca4aff598b5eb1e45550e69
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Tue Dec 4 12:52:50 2012 +0000

    sna/gen4: Workaround render corruption with multiple SF threads
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57410
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

I believe that's as good as it's going to get in this particular case, please do look out for further issues.
Comment 13 Deve 2012-12-05 17:51:30 UTC
I tested current git version, commit 0040eb84c9187476a75202ebb251dd74354e4fc7. Still the same. But it's not big problem for me, I see it only in this game. So what do you think, you can reopen it or not. Also I check sometimes recent version of drivers, so I will write if something changes.
Comment 14 Chris Wilson 2012-12-05 17:59:54 UTC
Weird, because it looked like I managed to reproduce your style of corruption. Well, if you get bored, you can try

diff --git a/src/sna/gen4_render.c b/src/sna/gen4_render.c
index 4e8ad57..9c64bcc 100644
--- a/src/sna/gen4_render.c
+++ b/src/sna/gen4_render.c
@@ -87,7 +87,7 @@
 #define SF_KERNEL_NUM_GRF 16
 #define PS_KERNEL_NUM_GRF 32
 
-#define GEN4_MAX_SF_THREADS 24
+#define GEN4_MAX_SF_THREADS 1
 #define GEN4_MAX_WM_THREADS 32
 #define G4X_MAX_WM_THREADS 50
Comment 15 Deve 2012-12-05 18:17:06 UTC
With patch still the same. I recorded video, maybe it will help you.

http://www.youtube.com/watch?v=4vXlcseOwp0&feature=youtu.be

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.