Bug 250685

Summary: thinkpad T60 with flgrx hangs on supsend (freezes right before it goes to sleep)
Product: [Fedora] Fedora Reporter: Brad Longo <brad.longo>
Component: pm-utilsAssignee: Phil Knirsch <pknirsch>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 7CC: lkundrak, opensource, rvokal, tcallawa
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-01-08 16:43:09 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:
Attachments:
Description Flags
here is what i get when i run cat /var/log/messages | grep ACPI none

Description Brad Longo 2007-08-02 21:09:15 UTC
Description of problem:
thinkpad T60 hangs on suspend.

Version-Release number of selected component (if applicable):
f7 kernel-2.6.22.1-41

How reproducible:
every time

Steps to Reproduce:
1.put computer to sleep
2.
3.
  
Actual results:
i get the message:

stopping tasks ... done
Suspending console(s)

then the computer freezes

Expected results:
computer should go to sleep

Additional info:

Comment 1 Brad Longo 2007-08-02 21:09:15 UTC
Created attachment 160551 [details]
here is what i get when i run cat /var/log/messages | grep ACPI

Comment 2 Till Maas 2007-08-15 15:07:47 UTC
(In reply to comment #0)
> Description of problem:
> thinkpad T60 hangs on suspend.
> 
> Version-Release number of selected component (if applicable):
> f7 kernel-2.6.22.1-41

> 1.put computer to sleep

How do you put the computer to sleep? And do you mean suspend to disk or suspend
to ram with sleep?

In case you did not try pm-suspend, please try pm-suspend for suspend to ram or
pm-hibernate for suspend to disk.

You can find some documentation here:
http://people.freedesktop.org/~hughsient/quirk/quirk-suspend-index.html

According to
http://gitweb.freedesktop.org/?p=hal-info.git;a=blob;f=fdi/information/10freedesktop/20-video-quirk-pm-lenovo.fdi
 a thinkpad T60 should be supported.



Comment 3 Brad Longo 2007-08-15 16:42:14 UTC
Anyway I put the computer to sleep results in this error.  If I have it set up
to go to sleep when I close the screen, if it goes to sleep automatically after
a period of time, or if I manually put it to sleep by using system suspend or
the keyboard shortcut.  All result in this error.

Comment 4 Brad Longo 2007-08-15 16:54:48 UTC
I just tried pm-suspend and also pm-hibernate, and the computer hung on suspend
with both of them.  I noticed the moon light for when the computer goes to sleep
was blinking.  I don't know if that means anything.  Here is some more stuff I
found that might help:

cat /var/log/Xorg.0.log | grep ACPI 
(WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)

cat /var/log/dmesg | grep ACPI
 BIOS-e820: 000000001fed0000 - 000000001fee3000 (ACPI data)
 BIOS-e820: 000000001fee3000 - 000000001ff00000 (ACPI NVS)
ACPI: RSDP 000F68A0, 0024 (r2 LENOVO)
ACPI: XSDT 1FED6342, 0074 (r1 LENOVO TP-79        1060  LTP        0)
ACPI: FACP 1FED6400, 00F4 (r3 LENOVO TP-79        1060 LNVO        1)
ACPI Warning (tbfadt-0434): Optional field "Gpe1Block" has zero address or
length: 000000000000102C/0 [20070126]
ACPI: DSDT 1FED65E7, C742 (r1 LENOVO TP-79        1060 MSFT  100000E)
ACPI: FACS 1FEF4000, 0040
ACPI: SSDT 1FED65B4, 0033 (r1 LENOVO TP-79        1060 MSFT  100000E)
ACPI: ECDT 1FEE2D29, 0052 (r1 LENOVO TP-79        1060 LNVO        1)
ACPI: TCPA 1FEE2D7B, 0032 (r2 LENOVO TP-79        1060 LNVO        1)
ACPI: APIC 1FEE2DAD, 0068 (r1 LENOVO TP-79        1060 LNVO        1)
ACPI: MCFG 1FEE2E15, 003E (r1 LENOVO TP-79        1060 LNVO        1)
ACPI: HPET 1FEE2E53, 0038 (r1 LENOVO TP-79        1060 LNVO        1)
ACPI: BOOT 1FEE2FD8, 0028 (r1 LENOVO TP-79        1060  LTP        1)
ACPI: SSDT 1FED58FD, 0507 (r1 LENOVO TP-79        1060 INTL 20050513)
ACPI: SSDT 1FED5725, 01D8 (r1 LENOVO TP-79        1060 INTL 20050513)
ACPI: PM-Timer IO Port: 0x1008
ACPI: Local APIC address 0xfee00000
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled)
ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1])
ACPI: IOAPIC (id[0x01] address[0xfec00000] gsi_base[0])
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
ACPI: IRQ0 used by override.
ACPI: IRQ2 used by override.
ACPI: IRQ9 used by override.
ACPI: HPET id: 0x8086a201 base: 0xfed00000
Using ACPI (MADT) for SMP configuration information
ACPI: Core revision 20070126
ACPI: bus type pci registered
ACPI: Interpreter enabled
ACPI: (supports S0 S3 S4 S5)
ACPI: Using IOAPIC for interrupt routing
ACPI: PCI Root Bridge [PCI0] (0000:00)
PCI quirk: region 1000-107f claimed by ICH6 ACPI/GPIO/TCO
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.AGP_._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.EXP0._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.EXP1._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.EXP2._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.EXP3._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.PCI1._PRT]
ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 9 10 *11)
ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11)
ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 10 *11)
ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 5 6 7 9 10 *11)
ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 7 9 10 *11)
ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 6 7 9 10 *11)
ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 6 7 9 10 *11)
ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6 7 9 10 *11)
ACPI: Power Resource [PUBS] (on)
pnp: PnP ACPI init
ACPI: bus type pnp registered
pnp: PnP ACPI: found 12 devices
ACPI: ACPI bus type pnp unregistered
PCI: Using ACPI for IRQ routing
ACPI: RTC can wake from S4
ACPI: PCI Interrupt 0000:00:01.0[A] -> GSI 16 (level, low) -> IRQ 16
ACPI: PCI Interrupt 0000:00:1c.0[A] -> GSI 20 (level, low) -> IRQ 17
ACPI: PCI Interrupt 0000:00:1c.1[B] -> GSI 21 (level, low) -> IRQ 18
ACPI: PCI Interrupt 0000:00:1c.2[C] -> GSI 22 (level, low) -> IRQ 19
ACPI: PCI Interrupt 0000:00:1c.3[D] -> GSI 23 (level, low) -> IRQ 20
ACPI: PCI Interrupt 0000:15:00.0[A] -> GSI 16 (level, low) -> IRQ 16
ACPI: SSDT 1FED60C1, 01ED (r1  PmRef  Cpu0Ist      100 INTL 20050513)
ACPI: SSDT 1FED5E04, 0238 (r1  PmRef  Cpu0Cst      100 INTL 20050513)
ACPI: CPU0 (power states: C1[C1] C2[C2] C3[C3])
ACPI: Processor [CPU0] (supports 8 throttling states)
ACPI: SSDT 1FED62AE, 0094 (r1  PmRef  Cpu1Ist      100 INTL 20050513)
ACPI: SSDT 1FED603C, 0085 (r1  PmRef  Cpu1Cst      100 INTL 20050513)
ACPI: CPU1 (power states: C1[C1] C2[C2] C3[C3])
ACPI: Processor [CPU1] (supports 8 throttling states)
ACPI: Thermal Zone [THM0] (60 C)
ACPI: Thermal Zone [THM1] (65 C)
ACPI: PCI Interrupt 0000:00:1d.0[A] -> GSI 16 (level, low) -> IRQ 16
ACPI: PCI Interrupt 0000:00:1d.1[B] -> GSI 17 (level, low) -> IRQ 21
ACPI: PCI Interrupt 0000:00:1d.2[C] -> GSI 18 (level, low) -> IRQ 22
ACPI: PCI Interrupt 0000:00:1d.3[D] -> GSI 19 (level, low) -> IRQ 23
ACPI: PCI Interrupt 0000:00:1d.7[D] -> GSI 19 (level, low) -> IRQ 23
ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 16 (level, low) -> IRQ 16
ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 16 (level, low) -> IRQ 16
ACPI: PCI interrupt for device 0000:02:00.0 disabled
ACPI: PCI Interrupt 0000:00:1f.3[A] -> GSI 23 (level, low) -> IRQ 20
ACPI: PCI Interrupt 0000:00:1f.1[C] -> GSI 16 (level, low) -> IRQ 16
ACPI: PCI Interrupt 0000:00:1b.0[B] -> GSI 17 (level, low) -> IRQ 21
ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 17 (level, low) -> IRQ 21
ACPI: PCI Interrupt 0000:01:00.0[A] -> GSI 16 (level, low) -> IRQ 16
ACPI: AC Adapter [AC] (on-line)
ACPI: Battery Slot [BAT0] (battery present)
ACPI: ACPI Dock Station Driver 
ACPI: \_SB_.PCI0.IDE0.PRIM.MSTR: found ejectable bay
ACPI: \_SB_.PCI0.IDE0.PRIM.MSTR: Adding notify handler
ACPI: Bay [\_SB_.PCI0.IDE0.PRIM.MSTR] Added
ACPI: Power Button (FF) [PWRF]
ACPI: Lid Switch [LID]
ACPI: Sleep Button (CM) [SLPB]
ACPI: Video Device [VID] (multi-head: yes  rom: no  post: no)
ACPI: Video Device [VID] (multi-head: yes  rom: no  post: no)


Comment 5 Till Maas 2007-08-15 17:01:31 UTC
Does
"pm-suspend --quirk-s3-bios --quirk-s3-mode"
work?

What is the output of
"grep T60
/usr/share/hal/fdi/information/10freedesktop/20-video-quirk-pm-lenovo.fdi"?
And of "rpm --qf '%{name}-%{version}-%{release}\n' -q hal-info"?

Comment 6 Brad Longo 2007-08-16 00:28:26 UTC
Here is what I get when I run those two commands...

grep T60 /usr/share/hal/fdi/information/10freedesktop/20-video-quirk-pm-lenovo.fdi 
      <!-- T60p -->
      <match key="system.hardware.version" string="ThinkPad T60">
      <match key="system.hardware.version" string="ThinkPad T60p">

rpm --qf '%{name}-%{version}-%{release}\n' -q hal-info
hal-info-20070516-2.fc7

Comment 7 Brad Longo 2007-08-16 00:36:43 UTC
I just tried pm-suspend --quirk-s3-bios --quirk-s3-mode and in return I got:

Freeing alive inet6 address da019280
stopping tasks ... done
Suspending console(s)


Comment 8 Till Maas 2007-08-16 08:38:55 UTC
Does it help when you run

# service acpid start
before you run
# pm-suspend --quirk-s3-bios --quirk-s3-mode
?

Also the output of
lshal | egrep "(system.hardware.(product|vendor|version)|smbios.bios.version)"
may be helpful.

Do have loaded any kernel modules that are not shipped with Fedora?

Comment 9 Brad Longo 2007-08-16 15:34:15 UTC
I tried running service acpid start and got back...
# service acpid start
acpid: unrecognized service

The kernel I am using is in the repos and it is
Linux 2.6.22.1-41.fc7 #1 SMP Fri Jul 27 18:10:34 EDT 2007 i686 i686 i386 GNU/Linux

Here is the output of lshal | egrep
"(system.hardware.(product|vendor|version)|smbios.bios.version)":
  smbios.bios.version = '79ET61WW (1.06 )'  (string)
  system.hardware.product = '200757U'  (string)
  system.hardware.vendor = 'LENOVO'  (string)
  system.hardware.version = 'ThinkPad T60'  (string)







Comment 10 Phil Knirsch 2007-08-16 15:53:44 UTC
Hm, that means acpid isn't installed on your system, which is kinda weird as
acpid should be part of the base installation for all systems.

Simply install it via:

yum install acpid

and try again.

Read ya, Phil

Comment 11 Till Maas 2007-08-16 16:12:37 UTC
I just googled for this problem, can you try suspend with an older kernel, e.g. 
2.6.21-1.3228.fc7?

And does "modprobe -r iwl3945" before suspend help with the 2.6.22 kernel? (#243850)

I added Tom "spot\" Callaway to CC, because he seems to have an T60 where
suspend works:
http://www.thinkwiki.org/wiki/Installing_Fedora_7_on_a_ThinkPad_T60
Maybe he encounters this bug, too, or knows how to fix it.

Comment 12 Tom "spot" Callaway 2007-08-16 17:12:21 UTC
I'm running Rawhide on my T60, it suspends perfectly.

Comment 13 Brad Longo 2007-08-27 05:00:35 UTC
hey ive been away for a while, but i just tried out that stuff.  yum was saying
there was nothing to install for acpid but i was able to do it with the
add/remove software program.  And so i started the daemon and tried to suspend
only to get the same end result as before.  It still hangs before suspend.  

Comment 14 Till Maas 2007-09-13 05:28:57 UTC
(In reply to comment #13)
> hey ive been away for a while, but i just tried out that stuff.  yum was saying
> there was nothing to install for acpid but i was able to do it with the
> add/remove software program.  And so i started the daemon and tried to suspend
> only to get the same end result as before.  It still hangs before suspend.  

Did you try an older kernel like I suggested, e.g. 2.6.21-1.3228.fc7?

Comment 15 Lubomir Kundrak 2007-10-01 10:35:41 UTC
Spot's T60 has an Intel graphics chip. Unfortunatelly my one has ATi and I also
experience the problem. Brad: Which one do you have, an ATi or Intel?

See bug #272541 for a possisble reason.

Comment 16 Lubomir Kundrak 2007-10-01 22:32:04 UTC
I can confirm that without the ATi driver, I can happily suspend and resume.

Comment 17 Brad Longo 2007-10-03 05:53:29 UTC
I do have ati but im using the fglrx driver

Comment 18 Till Maas 2007-10-03 07:46:55 UTC
Maybe it works, when you add
SUSPEND_MODULES="fglrx"
in a file to /etc/pm/config
In case the kernel module is fglrx.ko.



Comment 19 Lubomir Kundrak 2007-10-03 14:53:26 UTC
I would not say this can help. The fglrx module is used by X11 server and can't
be unloaded unless you kill X11 before suspending. This should probably closed
as WONTFIX and the reporter should try other versions on the driver. And next
time we buy hardware we should think twice before we decide to buy one with a
sucky binary-only driver.

Comment 20 Till Maas 2008-01-08 16:43:09 UTC
I guess this needs to be fixed by the fglrx authors. Or in case you now a way on
how to make this work, please file a new bug request and explain in detail, how
this can be worked around.