Bug 25506

Summary: radeon kms causes 33 second boot delay on kernel v2.6.32
Product: Mesa Reporter: Steven Noonan <steven>
Component: Drivers/DRI/R100Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: medium CC: mehmet.giritli, oldium.pro, pauldv, pedretti.fabio, rem11_1999, yoshi314
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: dmesg from v2.6.32 radeon kms 33s hang
manually force SS off except LVDS
dmesg from v2.6.32+patch #31852
use udelay again.

Description Steven Noonan 2009-12-07 21:26:05 UTC
Attached is a dmesg from a system running Linux 2.6.32. The system experiences a horrifying 33 second boot delay, during which the screen is apparently off, not just blanked. Using 'radeon.modeset=0' eliminates the delay.

I figured a 'git bisect v2.6.32 v2.6.31 -- drivers/gpu/drm' would
catch it. Hopefully this bisection helps pin down the underlying
problem:
 # bad:  [22763c5c] Linux 2.6.32
 # good: [74fca6a4] Linux 2.6.31
 # bad:  [df748b02] drm/ttm: fix refcounting in ttm global code.
 # good: [a513c184] drm/radeon/kms: Don't try to process irq when we a
 # good: [aadd4e17] drm/radeon: some r420s have a CP race with the DMA
 # good: [74bf2ad5] drm/kms: make fb helper work for all drivers.
 # bad:  [62a8ea3f] drm/radeon/kms: Remove old init path as no hw use
 # good: [f0ed1f65] drm/radeon/kms: Convert R520 to new init path and
 # skip: [d4550907] drm/radeon/kms: Convert R100 to new init path (V2)
 # good: [3bc68535] drm/radeon/kms: Convert RS690/RS740 to new init pa
 # bad:  [c010f800] drm/radeon/kms: Convert RS600 to new init path

Any ideas?
Comment 1 Steven Noonan 2009-12-07 22:27:50 UTC
Created attachment 31831 [details]
dmesg from v2.6.32 radeon kms 33s hang
Comment 2 Alex Deucher 2009-12-08 08:07:37 UTC
Do you have fbcon loaded?  if not you won't get any output until X is loaded.
Comment 3 Steven Noonan 2009-12-08 09:37:26 UTC
Of course. It's built in.

Note that this problem is a regression introduced between v2.6.31 and v2.6.32. Yes, I've reported the bug against X11, but it's not an X11 bug. It was reported here as per Dave Airlie's request.
Comment 4 rem11_1999 2009-12-08 10:09:06 UTC
Same problem here introduced in 2.6.32-rc7, rc6 is OK.

for info my card is a rv530
Comment 6 rem11_1999 2009-12-08 13:17:35 UTC
Yes for me no more delay after reverting theses two patch !
Comment 7 Alex Deucher 2009-12-08 14:50:14 UTC
Created attachment 31852 [details] [review]
manually force SS off except LVDS

Does this patch help?
Comment 8 Steven Noonan 2009-12-08 15:50:16 UTC
Created attachment 31853 [details]
dmesg from v2.6.32+patch #31852
Comment 9 Steven Noonan 2009-12-08 15:50:31 UTC
The mentioned patch didn't fix anything for me. I'm adding a new dmesg with the patch applied, in case it makes some difference there.
Comment 10 rem11_1999 2009-12-19 02:24:05 UTC
Yes tried the patch and it's not better. With 2.6.33-rc1 the same.. Had to go back to reverting the 2 mentioned commit :

http://git.kernel.org/?p=linux/kernel/git/airlied/drm-2.6.git;a=commit;h=d11aa88b33b071d55181a7a482b9e7494888c10e
http://git.kernel.org/?p=linux/kernel/git/airlied/drm-2.6.git;a=commit;h=ebbe1cb936dfc96d809ccf4d64a9755f8ba0c0ff
Comment 11 kowalski marcin 2009-12-19 03:24:41 UTC
i'm having a similar problem. not only i have >33 second delay on 2.6.32 (i think it's way over 1 minute in my case), but also when the screen finally appears it sets into resolution my monitor cannot  handle at all. (i think it's either too high refresh rate, or to big resolution - everything looks like diagonal stripes all over the screen).

i'm currently using very old daewoo cmc-1427x crt, as a temporary replacement for my lcd. it works ok with 2.6.31, setting into 1024x768 with kms. i had to disable automatic modesetting on 2.6.32 to be able to use this kernel.

i'll try to start modesetting and provide dmesg.
Comment 12 Steven Noonan 2009-12-24 15:29:42 UTC
Any progress on a patch for this bug?

( Also, I forgot to mention previously that reverting the two commits Alex mentions in comment 5 does eliminate the issue. )
Comment 13 Dave Airlie 2010-02-16 15:25:06 UTC
has anyone testing 2.6.33-rc8?
Comment 14 rem11_1999 2010-02-17 10:33:29 UTC
Nothing better with 2.6.33-rc8.. any information needed ?
Comment 15 Steven Noonan 2010-02-17 14:56:28 UTC
Yes, the problem still exists in the latest stable 2.6.32 kernel as well as in Linus' current tree.
Comment 16 Dave Airlie 2010-02-17 15:43:08 UTC
Created attachment 33379 [details] [review]
use udelay again.

does this patch help?

its currently in drm-radeon-testing.
Comment 17 Steven Noonan 2010-02-17 16:16:35 UTC
The patch resolves it for me.
Comment 18 Fabio Pedretti 2010-02-26 01:17:51 UTC
Fixed in 2.6.33
Comment 19 Paul de Vrieze 2010-03-02 01:30:58 UTC
*** Bug 26596 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.