Bug 17050 - [945GM/Mac] DSPARB split regression: screen flickers massivly when starting gnome apps
Summary: [945GM/Mac] DSPARB split regression: screen flickers massivly when starting g...
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: git
Hardware: Other All
: high normal
Assignee: Jesse Barnes
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2008-08-09 07:58 UTC by Felix Möller
Modified: 2008-08-20 15:10 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments
don't steal crtcs for detection (956 bytes, patch)
2008-08-12 18:12 UTC, Jesse Barnes
no flags Details | Splinter Review
Xorg.0.log.old (43.02 KB, text/plain)
2008-08-13 14:02 UTC, Felix Möller
no flags Details

Description Felix Möller 2008-08-09 07:58:48 UTC
I have a MacBook of early 2006 and I am running openSUSE 11.1 (factory) on that machine.

# lspci
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 945GM/GMS,
943/940GML Express Integrated Graphics Controller [8086:27a2] (rev 03)
00:02.1 Display controller [0380]: Intel Corporation Mobile 945GM/GMS/GME,
943/940GML Express Integrated Graphics Controller [8086:27a6] (rev 03)

# uname -a
Linux linux-5yr9 2.6.26-10-default #1 SMP 2008-08-06 13:14:35 +0200 i686 i686 i386 GNU/Linux

# rpm -q xorg-x11-server-7.3-140
xorg-x11-server-7.3-140

running gnome apps with the shipped intel driver version 2.4.0 let the screen flicker. running a gnome session was impossible.

After reporting the issue at https://bugzilla.novell.com/show_bug.cgi?id=414186 I bisected the problem and found:

37848925c4557385f154443ffbb917a8203506f8 is first bad commit
commit 37848925c4557385f154443ffbb917a8203506f8
Author: Jesse Barnes <jbarnes@nietzche.virtuousgeek.org>
Date:   Thu Jul 17 14:41:51 2008 -0700

    Choose a split for DSPARB based on the configured modes for both planes.
    [...]

When updating to newer version I found commit:
commit 2049ba211e7cdc383976c09f52c2b43acdd59481
Author: Jesse Barnes <jbarnes@hobbes.lan>
Date:   Thu Jul 31 13:07:20 2008 -0700

    Update DSPARB while planes are still off

    This avoids the flickering people reported in the 2.4.0 release.

Updating to this version does NOT solve the issue for me.

One version earlier (i.e. 42fb06f3f14fbec070350cf48361be4a0be0af04) with my bisected commit backed out does work for me...
Comment 1 Gordon Jin 2008-08-09 19:06:16 UTC
Thanks for filing this report. I'm reassigning to Jesse.
Comment 2 Jesse Barnes 2008-08-12 18:12:11 UTC
Created attachment 18248 [details] [review]
don't steal crtcs for detection

Mac minis might need this patch to avoid pipe stealing...
Comment 3 Felix Möller 2008-08-13 04:31:40 UTC
(In reply to comment #2)
> Created an attachment (id=18248) [details]
> don't steal crtcs for detection
> 
> Mac minis might need this patch to avoid pipe stealing...
I just tested your patch applied on top of and his improved a lot I just got one single flicker when starting firefox. All other apps I tested start cleanly now.

commit 2049ba211e7cdc383976c09f52c2b43acdd59481
Author: Jesse Barnes <jbarnes@hobbes.lan>
Date:   Thu Jul 31 13:07:20 2008 -0700

    Update DSPARB while planes are still off

    This avoids the flickering people reported in the 2.4.0 release.

Might this have anything to do with bug #17059 I just tried to reproduce it and it did not crash, this has not happened for a long time. ;) Will have to find some time to try more and then report back.

Thanks!
Comment 4 Jesse Barnes 2008-08-13 09:30:00 UTC
(In reply to comment #3)
> Might this have anything to do with bug #17059 I just tried to reproduce it and
> it did not crash, this has not happened for a long time. ;) Will have to find
> some time to try more and then report back.

I don't think this will fix your crash...  It would be good if you could get a backtrace though, the logs in that bug don't include anything helpful.  You can login remotely and try running gdb on the server.  I think the intellinuxgraphics.org site has some info on getting good debug info.
Comment 5 Felix Möller 2008-08-13 14:02:16 UTC
Created attachment 18269 [details]
Xorg.0.log.old

I have been running your don't steal crtc patch the whole day. But now I got a crash:

Could not init font path element /usr/share/fonts/TTF/, removing from list!                                                                                                     
Could not init font path element /usr/share/fonts/OTF, removing from list!                                                                                                      
Error in I830WaitLpRing(), timeout for 2 seconds                                                                                                                                
pgetbl_ctl: 0x7ffc0001 getbl_err: 0x00000102                                                                                                                                    
ipeir: 0x00000000 iphdr: 0x7d000003                                                                                                                                             
LP ring tail: 0x000040f0 head: 0x000040fc len: 0x0001f001 start 0x00000000                                                                                                      
eir: 0x0000 esr: 0x0010 emr: 0xffff                                                                                                                                             
instdone: 0xfa41 instpm: 0x0000                                                                                                                                                 
memmode: 0x00000306 instps: 0x800f04c4                                                                                                                                          
hwstam: 0xfffe ier: 0x0002 imr: 0x0000 iir: 0x0070                                                                                                                              
Ring at virtual 0xa7b02000 head 0x40fc tail 0x40f0 count 32765    

Probably is more readable as attachment.

Is this a new bug?
Comment 6 Felix Möller 2008-08-13 14:04:04 UTC
I am moving tomorrow therefore I am not sure when I will be able to answer again.
Comment 7 Jesse Barnes 2008-08-19 16:29:40 UTC
Yeah I think that's a new bug, sounds like the stealing avoidance patch fixes things for you in this case... We'll push the fix for 2.5.
Comment 8 Eric Anholt 2008-08-20 14:59:24 UTC
NAK on this patch to fix this issue.  DSPARB setting should be fixed to not turn off all planes when only one's on.
Comment 9 Jesse Barnes 2008-08-20 15:10:06 UTC
Pushed different fix as 5af504166f14f4401818f3b7c27ac2ccba7b9ff5.


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.