Bug 250596

Summary: Resume from suspend fails on Acer TM6465WLMib
Product: [Fedora] Fedora Reporter: Patrick <rh_bugzilla>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 7CC: chris.brown, kjb
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-09-27 19:01:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Patrick 2007-08-02 12:07:41 UTC
Description of problem:
Resume from suspend fails on an Acer TM6465WLMib

Version-Release number of selected component (if applicable):
2.6.20-1.2962, 2.6.21-1.3149, 2.6.21-1.3194, 2.6.22.1-27,
2.6.22.1-33, 2.6.22.1-36, 2.6.22.1-41, 2.6.22.1-42

How reproducible:
Open a terminal, as root issue pm-suspend --quirk-s3-mode. Wait for laptop to
suspend. Press spacebar. Result: no resume.

Steps to Reproduce:
1. open terminal, # pm-suspend --quirk-s3-mode
2. wait for laptop to suspend
3. press spacebar. Result no resume
  
Actual results:
No resume

Expected results:
Succesfull resume

Additional info:
Suspend/resume and hibernate/resume worked fine on FC6. When the laptop is
suspended and I press the spacebar then the harddisk led stays on for something
like 30 seconds. After that nothing. I have seen something similar in the past
with an Acer Ferrari (which resumes fine with FC6 too). The harddisk led lit up
briefly when resuming immediately followed by a brief flicker. If it flickers I
know it will resume (that part) ok. This is the case on the Acer Ferrari but
also when I boot this laptop into WinXP and resume.

After I press the spacebar, the harddisk led lits up for a long time and nothing
else happens. I still have a black screen (no backlit), no reaction to capslock
or typing in find /. Before issuing pm-suspend --quirk-s3-mode I have unloaded
as many modules and stopped as many services as possible. Here is a list if the
modules active just before suspend:

[root@localhost ~]# lsmod
Module                  Size  Used by
iwl3945               160933  0 
mac80211              146505  1 iwl3945
cfg80211               13129  1 mac80211
snd_hda_intel         243416  1 
snd_seq_dummy           7877  0 
snd_seq_oss            33473  0 
snd_seq_midi_event     11073  1 snd_seq_oss
snd_seq                50609  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device         11981  3 snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss            43457  0 
snd_mixer_oss          19521  1 snd_pcm_oss
snd_pcm                74949  2 snd_hda_intel,snd_pcm_oss
arc4                    6209  2 
snd_timer              24901  2 snd_seq,snd_pcm
ecb                     7617  2 
blkcipher              10437  1 ecb
snd                    53317  10
snd_hda_intel,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
tg3                   104901  0 
soundcore              11681  1 snd
snd_page_alloc         13769  2 snd_hda_intel,snd_pcm
sr_mod                 20837  0 
cdrom                  37089  1 sr_mod
sg                     37469  0 
ata_generic            11589  0 
ata_piix               18757  3 
libata                119985  2 ata_generic,ata_piix
sd_mod                 31297  4 
scsi_mod              140621  4 sr_mod,sg,libata,sd_mod
ext3                  125513  2 
jbd                    59881  1 ext3
mbcache                12485  1 ext3
uhci_hcd               27089  0

[root@localhost ~]# more /etc/pm/config.d/unload_modules 
SUSPEND_MODULES="iwl3945 mac80211 cfg80211 kvm kvm_intel firewire_ohci firewire_
core sdhci mmc_core"

Comment 1 Patrick 2007-08-04 14:04:37 UTC
Just tried 2.6.23-0.61.rc1.git9.fc8 and resume from suspend still fails. On
resume after pressing a key the harddisk led lights up, stays on a while, turns
off and then nothing happens anymore. Black screen (no backlit), capslock led
does not turn on when pressing the capslock key, typing in find / does not show
the harddisk led lighting up.

Comment 2 Patrick 2007-08-04 14:06:48 UTC
The hardware of the laptop is x86_64 but I installed the i386 version of F7 on
it. Don't know if that might have something to do with this bug so thought I
mention it. Please let me know if there is anything I can do to help fix this.

Comment 3 Klaasjan Brand 2007-08-17 11:56:05 UTC
I have a Travelmate 8000 with the same problem (suspend works, completely dead
on resume). This worked ok until the last Fedora 2.6.21 kernel (but needed a
video quirk), after that no version will resume.

Comment 4 Patrick 2007-08-17 12:50:29 UTC
FWIW an Acer Ferrari 4005WMLi no longer suspends and resumes either with F8T1 or
recent rawhide kernel. Suspend/resume worked fine with FC6 kernel 2.6.21-1.2962.
The recent FC6 kernel 2.6.22-1.41 update on the Ferrari makes resume fail also
with similar symptoms as the TM6465.


Comment 5 Patrick 2007-08-20 10:09:29 UTC
Made some progress. Booting with vga=0 (instead of vga=795) into runlevel 1 and
then issuing pm-suspend has the following results: laptop properly suspends.
After pressing a key the laptop starts again and the HD led flickers (yay!). The
screen stays black (no backlit). The positive difference is that the capslock
key still works and I can type reboot to reboot the laptop. So the laptop screen
does not get powered on. I tried all the possibilities listed in $ pm-suspend
--help but none of the options made the screen come back alive. Suggestions?

Comment 6 Christopher Brown 2007-09-23 20:10:35 UTC
Hello,

I'm reviewing this bug as part of the kernel bug triage project, an attempt to
isolate current bugs in the fedora kernel.

http://fedoraproject.org/wiki/KernelBugTriage

I am CC'ing myself to this bug and will try and assist you in resolving it if I can.

There hasn't been much activity on this bug for a while. Could you tell me if
you are still having problems with the latest kernel?

You might also want to try some quirks:

http://people.freedesktop.org/~hughsient/quirk/

The following are listed for your laptop:

pm-suspend  --quirk-vbe-post
pm-suspend  --quirk-vbestate-restore
pm-suspend  --quirk-no-fb

If the problem no longer exists then please close this bug or I'll do so in a
few days if there is no additional information lodged.

Comment 7 Patrick 2007-09-23 22:27:11 UTC
Hi Christopher. Thanks for picking this up. The problem still exists with the
latest F7 kernel. The Acer 4000 laptop you referred to as already being listed
was a 2nd laptop that I mentioned didn't work at the time. With the Acer TM8000
also listed I thought it might be a general Acer issue. I am primarily concerned
with my Acer TM6465WLMib. This laptop has no entries in hal-info, even in
today's hal-info git tree. Didn't know that --quirk-no-fb existed by the way. I
will try your suggestions and report back.

Comment 8 Patrick 2007-09-24 00:32:10 UTC
As root from a terminal while logged into a Gnome desktop I tried the available
quirk options again with the latest F7 (.76) kernel but still no joy. Note: the
--quirk-no-fb option you mentioned is not shown when I do "pm-suspend --help" on
my updated F7 laptop. Perhaps this is a Rawhide or F8T2 option? Suspend works ok
but resume always fails. The panel never lights up again. I tried the debug
process as described on the quirk webpage and here is the output: 
hash matches drivers/base/power/resume.c:57

Any suggestions how to go from here?

Comment 9 Christopher Brown 2007-09-24 10:56:08 UTC
Okay, thanks for debugging that Patrick.

The following seems to be a dupe:

https://bugzilla.redhat.com/show_bug.cgi?id=236783

Are you able to test with a rawhide kernel?

Comment 10 Patrick 2007-09-26 15:04:47 UTC
I tried Rawhide kernel .202 and the laptop does not properly resume. By properly
I mean this. The only way I can actually get it to resume somewhat is by booting
into runlevel 1 with vga=0 or no vga setting at all (I usually use vga=795).
Then I remove all possible modules. See list in the opening comment minus
iwl3945,  mac80211, cfg80211, arc4, blockcipher, uhci_hcd. Then I issue as root
"pm-suspend". After the laptop suspends I press the power button. The laptop
starts resuming. The HD led flickers and it seems to come back except that the
LCD panel is still pitch dark (not powered). The capslock LED works when I press
it. So I did an "init 5" and the HD LED starts flickering. I noticed that the
LCD panel was powered on and then after a while it hangs and once it even
rebooted. Resuming from runlevel 5 always results in failing to resume: the HD
LED either stays on for about 20-30 seconds and then the laptop hangs or the HD
LED does little and the laptop hangs. When this happens the only resolution is
to keep the power button pressed so the laptop is forced to shut down. Any other
suggestions?

Comment 11 Christopher Brown 2007-09-26 21:17:39 UTC
If you type:

vbetool post

blind after resuming and when you have a blank screen, does that help?

If not, then try running:

pm-suspend ; dmesg > dmesg.out ; sync

and then resuming which will give some debug info which you can attach to this
bug when the system comes back up.

Comment 12 Patrick 2007-09-27 04:16:49 UTC
Hi Christopher. Thanks for the tips. Did a bunch of tests with a surprising
result. Here is the overview. Hope the layout stays intact:

                   manually                         pm-suspend
runlevel   vga=   unload mods   suspends   resumes    option    driver
----------------------------------------------------------------------------
 1          -        no          yes        yes      vbe-post          [1]
 3          -        no          yes        yes      vbe-post          [1]
 3         795       no          yes        no       vbe-post          [1]
 3         792       no          yes        no       vbe-post          [1]
 5          -        no          yes        yes      vbe-post    vesa  [1]
 5         795       no          yes        no       vbe-post    vesa  [1]
 5         792       no          yes        no       vbe-post    vesa  [1]
 5          -        no          no         no       vbe-post    fglrx [2]
 5          0        no          no         no       vbe-post    fglrx [2]
 5          -        no          yes        yes      vbe-post    fglrx [2][3]

[1] /etc/pm/config.d/unload_modules has:
SUSPEND_MODULES="iwl3945 mac80211 cfg80211 kvm_intel kvm"

[2] /etc/pm/config.d/unload_modules has:
SUSPEND_MODULES="iwl3945 mac80211 cfg80211 kvm_intel kvm fglrx"
Unfortunately when DRI is enabled in the fglrx driver (version 8.40.4) it will
not unload (pm-suspend.log says "use count 17") causing suspend to hang.

[3] at a price the fglrx module can be convinced to play nice by adding the
following line to /etc/X11/xorg.conf in the Device section:
Option "no_dri"  "yes"
It does not really make sense to use a proprietary driver if you are not going
to use its DRI capabilities. However, the vesa driver is not capable of putting
my laptop screen in 1680x1050 so I have to use the fglrx driver to get its
native resolution.

Tip of the day: do not use vga=xxx if you want suspend/resume to work.
Thanks for all your help!

Comment 13 Christopher Brown 2007-09-27 19:01:24 UTC
Thanks for the info Patrick which I've added to the wiki. The fglrx driver is a
mess anyway but it was missing from your original lsmod when you originally
posted otherwise I would have mentioned it. If you could test with the radeon
driver then that would be great but really this bug should be closed WONTFIX as
proprietary drivers aren't supported as you probably know. Thanks again - that
table must have taken some time.