[Bug 42941] New: Resume from suspend to memory leaves display blank on Lenovo Ideapad U455
bugzilla-daemon at bugzilla.kernel.org
bugzilla-daemon at bugzilla.kernel.org
Fri Mar 16 11:39:50 PDT 2012
https://bugzilla.kernel.org/show_bug.cgi?id=42941
Summary: Resume from suspend to memory leaves display blank on
Lenovo Ideapad U455
Product: Power Management
Version: 2.5
Kernel Version: 3.3.0-rc7+
Platform: All
OS/Version: Linux
Tree: Mainline
Status: NEW
Severity: normal
Priority: P1
Component: Hibernation/Suspend
AssignedTo: power-management_other at kernel-bugs.osdl.org
ReportedBy: e-mail at date.by
CC: drivers_video-dri at kernel-bugs.osdl.org
Regression: No
Created an attachment (id=72610)
--> (https://bugzilla.kernel.org/attachment.cgi?id=72610)
dmesg output
Hardware: Lenovo Ideapad U455 laptop with AMD Athlon Neo processor and two
video cards: Radeon HD 3200 and Radeon HD 4500.
Description: when system resumes from suspend to memory (`echo mem >
/sys/power/state`) system resumes fine as i can log into it via ssh and display
turns on, but the display stays black showing nothing. However it's possible to
make display show a picture by switching video cards with vga_switcheroo.
Steps to reproduce attached dmesg log (see my comments below):
[1]# mount -t debugfs none /sys/kernel/debug
[2]# cat /sys/kernel/debug/vgaswitcheroo/switch
0:IGD:+:Pwr:0000:01:05.0
1:DIS: :Pwr:0000:02:00.0
[3]# echo mem > /sys/power/state
[4]# cat /sys/kernel/debug/vgaswitcheroo/switch
0:IGD:+:Pwr:0000:01:05.0
1:DIS: :Pwr:0000:02:00.0
[5]# echo DIS > /sys/kernel/debug/vgaswitcheroo/switch
[6]# echo IGD > /sys/kernel/debug/vgaswitcheroo/switch
[7]# cat /sys/kernel/debug/vgaswitcheroo/switch
0:IGD:+:Pwr:0000:01:05.0
1:DIS: :Off:0000:02:00.0
[8]# echo mem > /sys/power/state
[9]# cat /sys/kernel/debug/vgaswitcheroo/switch
0:IGD:+:Pwr:0000:01:05.0
1:DIS: :Off:0000:02:00.0
[10]# echo DIS > /sys/kernel/debug/vgaswitcheroo/switch
[11]# echo IGD > /sys/kernel/debug/vgaswitcheroo/switch
Comments:
[2] This shows the state of the video cards before suspend.
[3] Suspend worked fine, but display was blank after resume.
[4] This shows the state of the video cards after resume.
[5] That command made display to show the picture.
[7] This shows the state of the video cards before second suspend, when only
IGD card was active.
[8] Suspend worked fine, but resume took a lot of time:
PM: resume devices took 82.256 seconds
------------[ cut here ]------------
WARNING: at kernel/power/suspend_test.c:53 suspend_test_finish+0x86/0x90()
Hardware name: 20046
Component: resume devices, time: 82256
Modules linked in: btusb bluetooth snd_seq_dummy snd_seq_oss
snd_seq_midi_event snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss ipv6 ext2
mbcache cpufreq_ondemand powernow_k8 freq_table mperf lp parport_pc parport
fuse radeon brcmsmac ttm mac80211 drm_kms_helper joydev snd_hda_codec_hdmi
ohci_hcd snd_hda_codec_conexant brcmutil ssb snd_hda_intel drm mmc_core
snd_hda_codec sp5100_tco cfg80211 sg ideapad_laptop agpgart psmouse atl1c
thermal snd_hwdep processor video crc8 thermal_sys pcmcia snd_pcm snd_timer
cordic rtc_cmos pcmcia_core shpchp sparse_keymap evdev ehci_hcd i2c_piix4 snd
k8temp i2c_algo_bit bcma rfkill i2c_core serio_raw soundcore snd_page_alloc
battery ac hwmon button loop btrfs [last unloaded: pcmcia_rsrc]
Pid: 1834, comm: bash Not tainted 3.3.0-rc7+ #36
Call Trace:
[<ffffffff8103fe3f>] warn_slowpath_common+0x7f/0xc0
[<ffffffff8103ff36>] warn_slowpath_fmt+0x46/0x50
[<ffffffff8107fc96>] suspend_test_finish+0x86/0x90
[<ffffffff8107f9a1>] suspend_devices_and_enter+0x101/0x1e0
[<ffffffff8107fb51>] enter_state+0xd1/0x110
[<ffffffff8107e4c7>] state_store+0xb7/0x130
[<ffffffff812623cf>] kobj_attr_store+0xf/0x30
[<ffffffff811b0d22>] sysfs_write_file+0xf2/0x180
[<ffffffff81149793>] vfs_write+0xb3/0x180
[<ffffffff81149aba>] sys_write+0x4a/0x90
[<ffffffff8153f829>] system_call_fastpath+0x16/0x1b
---[ end trace 6802c35567ce73fa ]---
PM: Finishing wakeup.
[9] This shows the state of the video cards after second resume.
[10] That command turned display off and that's what appeared in dmesg output:
radeon: switched on
radeon 0000:02:00.0: enabling device (0000 -> 0003)
radeon 0000:02:00.0: Wait for MC idle timedout !
radeon 0000:02:00.0: Wait for MC idle timedout !
[drm] PCIE GART of 512M enabled (table at 0x0000000000040000).
radeon 0000:02:00.0: WB enabled
[drm] fence driver on ring 0 use gpu addr 0x20000c00 and cpu addr
0xffff8800a4523c00
[drm:r600_ring_test] *ERROR* radeon: ring 0 test failed
(scratch(0x8500)=0xFFFFFFFF)
[drm:rv770_resume] *ERROR* r600 startup failed on resume
fbcon: Remapping primary device, fb1, to tty 1-63
radeon: switched off
[11] That command made display to show the picture.
Notes:
* I have read Documentation/power/basic-pm-debugging.txt and made all described
tests and all of them were successful.
* I have tried different quirks with `pm-suspend --quirk-*`, but none of them
helped.
--
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching someone on the CC list of the bug.
More information about the dri-devel
mailing list