Bug 32535

Summary: [RADEON:KMS:RV710M:SUSPEND] graphics corruption after resume from hibernate on thinkpad SL510
Product: DRI Reporter: roberth <sarvatt>
Component: DRM/RadeonAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED INVALID QA Contact:
Severity: normal    
Priority: medium CC: christopher.m.penalver
Version: unspecified   
Hardware: Other   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
kernel log showing the problem
none
possible fix
none
kernel log with patch none

Description roberth 2010-12-20 13:35:28 UTC
(Forwarding this from original bug reporter at http://launchpad.net/bugs/692755 )

Description:

Graphics get corrupted before the machine enters S4. I don't have a camera handy, but it's a grey pattern that looks a bit like an old-fashioned X11 stipple (though it's not just B&W, there is some R/G/B in the pattern. The pattern is not as random as static; it appears tiled, as if we're displaying tiles populated with corrupt video memory.

On resume from hibernate, the BIOS logo is not corrupt and the (not-corrupted) plymouth logo flashes for an instant. There are several seconds of a flashing white cursor at the top left of the screen too. Once X comes back I see the stipple pattern/corruption again. Both the X and console sessions are corrupted. There is a separate corrupt tile surrounding the mouse cursor (the cursor itself is not visible). Moving the mouse cursor results in the mouse-tile moving around. The machine is otherwise functional - I can (blindly) login to a console on a VT and execute commands.

Syslog from the failed resume session shows errors from drm:radeon, starting with:

Dec 19 14:36:49 ubuntu-ThinkPad-SL510 kernel: [ 1026.671568] [drm:r600_ring_test] *ERROR* radeon: ring test failed (scratch(0x8504)=0xCAFEDEAD)
Dec 19 14:36:49 ubuntu-ThinkPad-SL510 kernel: [ 1026.671570] [drm:rv770_resume] *ERROR* r600 startup failed on resume

Then hundreds of the following, with different values of IB

Dec 19 14:36:49 ubuntu-ThinkPad-SL510 kernel: [ 1029.211800] [drm:radeon_ib_schedule] *ERROR* radeon: couldn't schedule IB(11).
Dec 19 14:36:49 ubuntu-ThinkPad-SL510 kernel: [ 1029.211847] [drm:radeon_cs_ioctl] *ERROR* Faild to schedule IB !
Dec 19 14:36:49 ubuntu-ThinkPad-SL510 kernel: [ 1029.212731] [drm:radeon_ib_schedule] *ERROR* radeon: couldn't schedule IB(12).
Dec 19 14:36:49 ubuntu-ThinkPad-SL510 kernel: [ 1029.212773] [drm:radeon_cs_ioctl] *ERROR* Faild to schedule IB !

If I disable the radeon driver by adding, e.g., the made-up 'radeon.nofailboat=1' kernel parameter, the machine enters and resumes from S4 normally, with no corruption upon either entering or resuming from S4.

This is on Ubuntu 10.10 with these components:

Kernel: 2.6.35.8 (2.6.37 git checkout from 20101220 also tested)
libdrm: 2.4.21
xf86-video-ati: 6.13.1
mesa: 7.9-git20100924
Comment 1 Alex Deucher 2010-12-20 13:41:20 UTC
Does a newer kernel (2.6.36 or 2.6.37) help?
Comment 2 roberth 2010-12-20 13:42:12 UTC
Created attachment 41317 [details]
kernel log showing the problem
Comment 3 roberth 2010-12-20 13:44:10 UTC
(In reply to comment #1)
> Does a newer kernel (2.6.36 or 2.6.37) help?

He tried a git checkout from today with no luck, up to commit 55ec86f848a5f872fd43f5d7206464a0af419110
Comment 4 Alex Deucher 2010-12-20 13:47:01 UTC
Created attachment 41318 [details] [review]
possible fix

Does this kernel patch help?
Comment 5 roberth 2010-12-20 15:03:19 UTC
Created attachment 41322 [details]
kernel log with patch

It didn't help unfortunately

[   45.741351] radeon 0000:01:00.0: GPU softreset 
[   45.741354] radeon 0000:01:00.0:   R_008010_GRBM_STATUS=0x00003028
[   45.741357] radeon 0000:01:00.0:   R_008014_GRBM_STATUS2=0x00000002
[   45.741359] radeon 0000:01:00.0:   R_000E50_SRBM_STATUS=0x200000C0
[   45.741373] radeon 0000:01:00.0:   R_008020_GRBM_SOFT_RESET=0x00007FEE
Comment 6 roberth 2010-12-21 10:51:59 UTC
A video of the corruption can be seen here:

http://sarvatt.com/downloads/sl510-bug-691324.mov
Comment 7 jeroen__klomp 2012-09-29 17:31:47 UTC
Hi, I can work around this problem by booting with "nomodeset".
Comment 8 Alex Deucher 2012-09-29 19:13:19 UTC
Is this still an issue with a newer kernel?
Comment 9 Christopher M. Penalver 2016-02-26 06:02:12 UTC
Downstream report invalid.

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.