Bug 14640

Summary: Suspend/resume failed on Thinkpad running Linux with kernel 2.6.31
Product: Drivers Reporter: Wayne (wayne.zhang)
Component: Video(DRI - Intel)Assignee: ykzhao (yakui.zhao)
Status: RESOLVED PATCH_ALREADY_AVAILABLE    
Severity: normal CC: adinov, jbarnes, lamalfaleonardo, markus.burger1990, rjw, rui.zhang
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.31 Subsystem:
Regression: Yes Bisected commit-id:
Bug Depends on:    
Bug Blocks: 7216, 13615, 56331    
Attachments: dmesg of suspend fail with pm_trace enabled

Description Wayne 2009-11-19 03:57:07 UTC
IBM ThinkPad 51R running Ubuntu 9.10 (upgraded from 9.04) failed to suspend. Suspend light (semi moon) flashing and system locked. Power off is the only option. It works on Ubuntu 9.04 (kernel 2.6.28.x).

I have tested with kernel 2.6.30, 2.6.31.6, 2.6.32.rc6/rc7 and found that it works on release 2.6.30, but failed on all other version greater than 2.6.30. (I used binary kernels download from Ubuntu kernel site: http://kernel.ubuntu.com/~kernel-ppa/mainline/).

I have reported a bug on Ubuntu site:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/470830

There are lost of bug reports for ThinkPad (Both old IBM's and new Lenovo's). You may search by "Thinkpad suspend/resume failure" on URL:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug

There are more than 100 bug reports. ID >= 394831 are on Ubuntu 9.10/kernel 2.6.31.

I don't know this is a bug of Linux kernel or libraries/applications in Ubuntu.
Comment 1 Rafael J. Wysocki 2009-11-19 19:45:26 UTC
It certainly looks like a kernel regression, but it's difficult to say what's wrong without narrowing it down.

Would you be able to build a kernel from kernel.org?
Comment 2 Wayne 2009-11-20 05:33:19 UTC
I will try. Thanks.
Comment 3 Wayne 2009-11-23 08:53:33 UTC
Sorry, I can build Linux kernel (2.6.31.6) on my notebook, too much disk space required (about 4G free space left) to build the kernel. 

It's not easy for an old notebook to build a Linux system. It's an 5 years old IBM ThinkPad R51 with 30G hard disk, installed Windows XP and Ubuntu. Ubuntu is on a 10G partition.

Is there some parameters can be configed that let the build process to use fewer disk spaces?

Thanks.
Comment 4 Wayne 2010-01-07 07:31:28 UTC
More details in this Ubuntu bug comments:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/485108
Comment 5 Wayne 2010-01-07 07:34:10 UTC
I just got an IBM ThinkPad T42 (40G disk, it's almost full now), and will get a T43p in next week hopefully. The T43p has a 60G disk and I will try to build the 2.6.31 kernel on that machine.
Comment 6 Zhang Rui 2010-01-18 02:34:23 UTC
any update?
Comment 7 Leonardo La Malfa 2010-02-22 15:47:14 UTC
On Launchpad.net I was encouraged to browse the bugzilla.kernel.org database to file a new bug and link it to the bug I reported back in November, 2009. However, I fond this one matching my and many other users' issues detailed at this address: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/485108, as already reported by Wayne. This issue affects several systems besides Thinkpads, and is not isolated or hardware-specific. I've already submitted some data to the developers as part of the routine bug report procedure, but would be happy to help should you need more specific data. Also, many more users experiencing this issue on different systems subscribed to the bug report and are likely to provide more data, if asked to.
Comment 8 Zhang Rui 2010-02-24 03:15:53 UTC
suspend/resume bugs are mostly platform specific.
My question is: are you sure you have the same problem as this one?

(In reply to comment #0)
> I have tested with kernel 2.6.30, 2.6.31.6, 2.6.32.rc6/rc7 and found that it
> works on release 2.6.30, but failed on all other version greater than 2.6.30.
> (I used binary kernels download from Ubuntu kernel site:
> http://kernel.ubuntu.com/~kernel-ppa/mainline/).

does your laptop also work in 2.6.30 and fail in other kernel releases?
If yes, it would be great if you can use git bisect to help us narrow down the problem.
If not, I suggest you to file another bug report and give a detailed description on the problem you encountered.
please attach the dmesg output and acpidump output of your laptop in the new bug reports as well.
Comment 9 Wayne 2010-02-24 08:11:09 UTC
Yes, it works on 2.6.30 and failed on any release > 2.6.30. I kept trying any new updates of release of 2.6.31, 2.6.32 and 2.6.33 but neither of them work.

I have got 2 ThinkPads with larger hard disks now, would you please give me some suggestions on what should be configured to the build, for example:

Which version should I use?
What build configuration parameters should be set before build?

I am not very familiar with Linux kernel build process, even though I have developed C++ application on Unix in 90s. I am using Java now, which the is much simpler.

Thanks,
Wayne
Comment 10 Wayne 2010-02-24 08:24:03 UTC
The problem happened when I upgrade my laptop from Ubuntu 9.04 (kernel 2.6.28) to Ubuntu 9.10 (kernel 2.6.31). When I use kernel 2.6.30 with Ubuntu 9.10, suspend/resume without any issue, but applications with video playback, for example Flash playback in Firefox, any movie player (VLC, MPlayer) will crash, and there is no audio. May be audio and video (X server and drivers?) using some feather of kernel 2.6.31. So using kernel 2.6.30 is not a workaround.

This is really an annoying bug introduced in release 2.6.31, it makes the system almost isn't usable because you have to power off the system when suspend hangs, and suspend is quite frequently for a laptop system. It's definitely a kernel bug (regression) because I have found there are other reports of this issue on other Linux distributions with kernel 2.6.31, such as Fedora 12 and OpenSuse.
Comment 11 Wayne 2010-02-24 08:32:42 UTC
Even though there are other brands encountered these issue, but ThinkPad is brand that failed most frequently. Almost any series (R50,51,52, T40,41,42,43, X..) for both old and new, the IBM's and Lenovo's. Is there any special component that ThinkPad have and other brand don't have usually? I found that ThinkPad ACPI system is special (http://ibm-acpi.sourceforge.net/), is there any significant change on this driver or other module that ACPI depend on in Linux kernel 2.6.31? That may be a hint.
Comment 12 Leonardo La Malfa 2010-02-24 14:03:32 UTC
(In reply to comment #8)
> suspend/resume bugs are mostly platform specific.

I believe you. However, most comments here https://bugs.launchpad.net/ubuntu/+source/linux/+bug/485108 seem to disagree.

> My question is: are you sure you have the same problem as this one?
> 
> (In reply to comment #0)
> > I have tested with kernel 2.6.30, 2.6.31.6, 2.6.32.rc6/rc7 and found that
> it
> > works on release 2.6.30, but failed on all other version greater than
> 2.6.30.
> > (I used binary kernels download from Ubuntu kernel site:
> > http://kernel.ubuntu.com/~kernel-ppa/mainline/).
> 
> does your laptop also work in 2.6.30 and fail in other kernel releases?

Yes, I am sure. As I already wrote, my Thinkpad R50e resumed from Suspend mode flawlessly under Intrepid and Jaunty, whereas under Karmic my laptop never actually suspends anymore, nor hibernate, for that matter. Indeed, in case it helps, if you actually click on the above address and follow the links related to serious kernel problems, you might get a wider picture of the connection between the serious kernel problems and the "suspend/resume failure" (Bug #488673), or "hibernate/resume failure" (Bug #493505). I'm not sure they're all related, but never had any of those before Karmic.

> If yes, it would be great if you can use git bisect to help us narrow down
> the
> problem.

I have tried to solve the issue, but when I saw no solution I started using my desktop computer, for I frequently need those features for work. If needed, I will use it again to help you narrow down the problem, but will need guidance, for I don't know what "git bisect" is, and my technical knowledge of ubuntu and its inner workings is very limited.

> If not, I suggest you to file another bug report and give a detailed
> description on the problem you encountered.
> please attach the dmesg output and acpidump output of your laptop in the new
> bug reports as well.

I believe it is indeed the same bug, which Apport indicates as a serious kernel problem. If from the description and the comments on Launchpad you believe otherwise, please let me know, I will be happy to follow your suggestion.
Comment 13 Rafael J. Wysocki 2010-02-24 19:25:23 UTC
Please provide some more detailed hardware information.  What chipset is that, what CPU, what graphics etc.
Comment 14 Leonardo La Malfa 2010-02-24 22:01:51 UTC
(In reply to comment #13)
> Please provide some more detailed hardware information.  What chipset is
> that,
> what CPU, what graphics etc.

Sure, here goes:

lelamal@ECO:~$ sudo lshw
[sudo] password for lelamal: 
eco                       
    description: Notebook
    product: 1834RTG
    vendor: IBM
    version: ThinkPad R50e
    serial: L3BMRPL
    width: 32 bits
    capabilities: smbios-2.33 dmi-2.33
    configuration: administrator_password=enabled boot=normal chassis=notebook frontpanel_password=unknown keyboard_password=disabled power-on_password=disabled uuid=9A592A81-47A2-11CB-BFA4-EE1379D08B97
  *-core
       description: Motherboard
       product: 1834RTG
       vendor: IBM
       physical id: 0
       version: Not Available
       serial: 1ZAL959L5B9
     *-firmware
          description: BIOS
          vendor: IBM
          physical id: 0
          version: 1WET90WW (2.10 ) (12/08/2006)
          size: 144KiB
          capacity: 960KiB
          capabilities: pci pcmcia pnp apm upgrade shadowing escd cdboot bootselect edd int13floppy720 int5printscreen int9keyboard int14serial int17printer int10video acpi usb agp biosbootspecification
     *-cpu
          description: CPU
          product: Intel(R) Celeron(R) M processor         1.50GHz
          vendor: Intel Corp.
          physical id: 6
          bus info: cpu@0
          version: 6.13.8
          slot: None
          size: 1500MHz
          capacity: 1500MHz
          width: 32 bits
          clock: 400MHz
          capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 mtrr pge mca cmov clflush dts acpi mmx fxsr sse sse2 ss tm pbe up bts
        *-cache:0
             description: L1 cache
             physical id: a
             slot: Internal L1 Cache
             size: 32KiB
             capacity: 32KiB
             capabilities: synchronous internal write-back
        *-cache:1
             description: L2 cache
             physical id: b
             slot: Internal L2 Cache
             size: 1MiB
             capacity: 1MiB
             capabilities: burst internal write-back unified
     *-memory
          description: System Memory
          physical id: 25
          slot: System board or motherboard
          size: 1536MiB
        *-bank:0
             description: SODIMM DDR Synchronous
             physical id: 0
             slot: DIMM 1
             size: 512MiB
             width: 64 bits
        *-bank:1
             description: SODIMM DDR Synchronous
             physical id: 1
             slot: DIMM 2
             size: 1GiB
             width: 64 bits
     *-pci
          description: Host bridge
          product: 82852/82855 GM/GME/PM/GMV Processor to I/O Controller
          vendor: Intel Corporation
          physical id: 100
          bus info: pci@0000:00:00.0
          version: 02
          width: 32 bits
          clock: 33MHz
          configuration: driver=agpgart-intel
          resources: irq:0
        *-generic:0 UNCLAIMED
             description: System peripheral
             product: 82852/82855 GM/GME/PM/GMV Processor to I/O Controller
             vendor: Intel Corporation
             physical id: 0.1
             bus info: pci@0000:00:00.1
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master
             configuration: latency=0
        *-generic:1 UNCLAIMED
             description: System peripheral
             product: 82852/82855 GM/GME/PM/GMV Processor to I/O Controller
             vendor: Intel Corporation
             physical id: 0.3
             bus info: pci@0000:00:00.3
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master
             configuration: latency=0
        *-display:0
             description: VGA compatible controller
             product: 82852/855GM Integrated Graphics Device
             vendor: Intel Corporation
             physical id: 2
             bus info: pci@0000:00:02.0
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: pm bus_master cap_list rom
             configuration: driver=i915 latency=0
             resources: irq:11 memory:e0000000-e7ffffff(prefetchable) memory:d0000000-d007ffff ioport:1800(size=8)
        *-display:1 UNCLAIMED
             description: Display controller
             product: 82852/855GM Integrated Graphics Device
             vendor: Intel Corporation
             physical id: 2.1
             bus info: pci@0000:00:02.1
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: pm cap_list
             configuration: latency=0
             resources: memory:e8000000-efffffff(prefetchable) memory:d0080000-d00fffff
        *-usb:0
             description: USB Controller
             product: 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1
             vendor: Intel Corporation
             physical id: 1d
             bus info: pci@0000:00:1d.0
             version: 01
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master
             configuration: driver=uhci_hcd latency=0
             resources: irq:11 ioport:1820(size=32)
        *-usb:1
             description: USB Controller
             product: 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2
             vendor: Intel Corporation
             physical id: 1d.1
             bus info: pci@0000:00:1d.1
             version: 01
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master
             configuration: driver=uhci_hcd latency=0
             resources: irq:11 ioport:1840(size=32)
        *-usb:2
             description: USB Controller
             product: 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3
             vendor: Intel Corporation
             physical id: 1d.2
             bus info: pci@0000:00:1d.2
             version: 01
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master
             configuration: driver=uhci_hcd latency=0
             resources: irq:11 ioport:1860(size=32)
        *-usb:3
             description: USB Controller
             product: 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller
             vendor: Intel Corporation
             physical id: 1d.7
             bus info: pci@0000:00:1d.7
             version: 01
             width: 32 bits
             clock: 33MHz
             capabilities: pm debug bus_master cap_list
             configuration: driver=ehci_hcd latency=0
             resources: irq:11 memory:d0100000-d01003ff
        *-pci
             description: PCI bridge
             product: 82801 Mobile PCI Bridge
             vendor: Intel Corporation
             physical id: 1e
             bus info: pci@0000:00:1e.0
             version: 81
             width: 32 bits
             clock: 33MHz
             capabilities: pci bus_master
             resources: ioport:3000(size=20480) memory:d0200000-dfffffff memory:f0000000-f7ffffff(prefetchable)
           *-pcmcia
                description: CardBus bridge
                product: PCI1510 PC card Cardbus Controller
                vendor: Texas Instruments
                physical id: 0
                bus info: pci@0000:02:00.0
                version: 00
                width: 32 bits
                clock: 33MHz
                capabilities: pcmcia bus_master cap_list
                configuration: driver=yenta_cardbus latency=176 maxlatency=5 mingnt=192
                resources: irq:11 memory:b0000000-b0000fff ioport:3000(size=256) ioport:3400(size=256) memory:f0000000-f3ffffff(prefetchable) memory:d4000000-d7ffffff
           *-network:0
                description: Wireless interface
                product: PRO/Wireless 2200BG [Calexico2] Network Connection
                vendor: Intel Corporation
                physical id: 2
                bus info: pci@0000:02:02.0
                logical name: eth1
                version: 05
                serial: 00:15:00:16:89:03
                width: 32 bits
                clock: 33MHz
                capabilities: pm bus_master cap_list ethernet physical wireless
                configuration: broadcast=yes driver=ipw2200 driverversion=1.2.2kmprq firmware=ABG:9.0.5.27 (Dec 12 2007) ip=192.168.1.2 latency=64 link=yes maxlatency=24 mingnt=3 multicast=yes wireless=IEEE 802.11g
                resources: irq:11 memory:d0200000-d0200fff
           *-network:1
                description: Ethernet interface
                product: 82801DB PRO/100 VE (MOB) Ethernet Controller
                vendor: Intel Corporation
                physical id: 8
                bus info: pci@0000:02:08.0
                logical name: eth0
                version: 81
                serial: 00:0a:e4:38:f0:2a
                size: 10MB/s
                capacity: 100MB/s
                width: 32 bits
                clock: 33MHz
                capabilities: pm bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
                configuration: autonegotiation=on broadcast=yes driver=e100 driverversion=3.5.24-k2-NAPI duplex=half firmware=N/A latency=66 link=no maxlatency=56 mingnt=8 multicast=yes port=MII speed=10MB/s
                resources: irq:11 memory:d0201000-d0201fff ioport:7000(size=64)
        *-isa
             description: ISA bridge
             product: 82801DBM (ICH4-M) LPC Interface Bridge
             vendor: Intel Corporation
             physical id: 1f
             bus info: pci@0000:00:1f.0
             version: 01
             width: 32 bits
             clock: 33MHz
             capabilities: isa bus_master
             configuration: latency=0
        *-ide
             description: IDE interface
             product: 82801DBM (ICH4-M) IDE Controller
             vendor: Intel Corporation
             physical id: 1f.1
             bus info: pci@0000:00:1f.1
             logical name: scsi0
             logical name: scsi1
             version: 01
             width: 32 bits
             clock: 33MHz
             capabilities: ide bus_master emulated
             configuration: driver=ata_piix latency=0
             resources: irq:11 ioport:1f0(size=8) ioport:3f6 ioport:170(size=8) ioport:376 ioport:1810(size=16) memory:60000000-600003ff
           *-disk
                description: ATA Disk
                product: FUJITSU MHT2040A
                vendor: Fujitsu
                physical id: 0
                bus info: scsi@0:0.0.0
                logical name: /dev/sda
                version: 8431
                serial: NN4GT591L0TJ
                size: 37GiB (40GB)
                capabilities: partitioned partitioned:dos
                configuration: ansiversion=5 signature=00090c1d
              *-volume:0
                   description: EXT4 volume
                   vendor: Linux
                   physical id: 1
                   bus info: scsi@0:0.0.0,1
                   logical name: /dev/sda1
                   logical name: /
                   version: 1.0
                   serial: 48cb8a41-2954-41e2-baaa-990c31d64638
                   size: 35GiB
                   capacity: 35GiB
                   capabilities: primary bootable journaled extended_attributes large_files huge_files dir_nlink recover extents ext4 ext2 initialized
                   configuration: created=2009-10-30 15:49:57 filesystem=ext4 lastmountpoint=/o������a�9���K��x~��\�`��`���a��~��~��e^��a�p�%�� modified=2010-02-10 01:28:21 mount.fstype=ext4 mount.options=rw,relatime,errors=remount-ro,barrier=1,data=ordered mounted=2010-02-24 22:48:38 state=mounted
              *-volume:1
                   description: Extended partition
                   physical id: 2
                   bus info: scsi@0:0.0.0,2
                   logical name: /dev/sda2
                   size: 1608MiB
                   capacity: 1608MiB
                   capabilities: primary extended partitioned partitioned:extended
                 *-logicalvolume
                      description: Linux swap / Solaris partition
                      physical id: 5
                      logical name: /dev/sda5
                      capacity: 1608MiB
                      capabilities: nofs
           *-cdrom
                description: DVD reader
                product: UJDA760 DVD/CDRW
                vendor: MATSHITA
                physical id: 1
                bus info: scsi@1:0.0.0
                logical name: /dev/cdrom
                logical name: /dev/cdrw
                logical name: /dev/dvd
                logical name: /dev/scd0
                logical name: /dev/sr0
                version: 1.02
                capabilities: removable audio cd-r cd-rw dvd
                configuration: ansiversion=5 status=nodisc
        *-serial UNCLAIMED
             description: SMBus
             product: 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller
             vendor: Intel Corporation
             physical id: 1f.3
             bus info: pci@0000:00:1f.3
             version: 01
             width: 32 bits
             clock: 33MHz
             configuration: latency=0
             resources: ioport:1880(size=32)
        *-multimedia
             description: Multimedia audio controller
             product: 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller
             vendor: Intel Corporation
             physical id: 1f.5
             bus info: pci@0000:00:1f.5
             version: 01
             width: 32 bits
             clock: 33MHz
             capabilities: pm bus_master cap_list
             configuration: driver=Intel ICH latency=0
             resources: irq:5 ioport:1c00(size=256) ioport:18c0(size=64) memory:d0100c00-d0100dff memory:d0100800-d01008ff
        *-communication UNCLAIMED
             description: Modem
             product: 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller
             vendor: Intel Corporation
             physical id: 1f.6
             bus info: pci@0000:00:1f.6
             version: 01
             width: 32 bits
             clock: 33MHz
             capabilities: pm cap_list
             configuration: latency=0
             resources: ioport:2400(size=256) ioport:2000(size=128)
  *-network DISABLED
       description: Ethernet interface
       physical id: 1
       logical name: vboxnet0
       serial: 0a:00:27:00:00:00
       capabilities: ethernet physical
       configuration: broadcast=yes multicast=yes
Comment 15 Wayne 2010-02-25 02:21:26 UTC
(In reply to comment #13)
> Please provide some more detailed hardware information.  What chipset is
> that,
> what CPU, what graphics etc.

Hi Rafael J. Wysock,
I think if this bug is caused by hardware, it's not "normal" hardware such as CPU, graphics card etc, if should related to SPECIFIC hardware that only ThinkPad has, for example bios (IBM has specific ACPI characters, isn't it?), security chip etc. Because almost all series of ThinkPad fails (R, T, and X series as I know), and they uses wild range of CPU and graphics (R51 use embedded Intel graphics, T42, T43 use ATI FireGL grachics). 

I suspect some ThinkPad-ACPI changes cause this issue. There is a ACPI change in release 2.6.31 for LED status:

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=f21179a47ff8d1046a61c1cf5920244997a4a7bb

and when resume fails, the SEMI MOON LED flashes in an extremely high frequency and the system die.

Cheers,
Wayne
Comment 16 Zhang Rui 2010-02-25 02:30:24 UTC
then does the problem still exist if you blacklist the thinkpad-acpi driver?
I assume the S3 on your laptops used to work w/o this driver.
Comment 17 Wayne 2010-02-25 03:00:09 UTC
The following is the models of ThinkPad that failed from Ubuntu bug database
(not completed):

https://bugs.launchpad.net/ubuntu/+source/linux/+bugs?field.searchtext=thinkpad+suspend%2Fresume+failure&orderby=-importance&search=Search&field.status%3Alist=NEW&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&field.status%3Alist=INCOMPLETE_WITHOUT_RESPONSE&field.status%3Alist=CONFIRMED&field.status%3Alist=TRIAGED&field.status%3Alist=INPROGRESS&field.status%3Alist=FIXCOMMITTED&field.assignee=&field.bug_reporter=&field.omit_dupes=on&field.has_patch=&field.has_no_package=



IBM        Thinkpad T41p
IBM     ThinkPad T42p
IBM    ThinkPad T43

IBM    ThinkPad R50e
IBM    ThinkPad R51

IBM     Thinkpad G40 

IBM        ThinkPad X31
IBM    ThinkPad X40

IBM        ThinkPad Z60m

LENOVO     ThinkPad T60p
LENOVO     ThinkPad T61
LENOVO     ThinkPad T61p
LENOVO     ThinkPad T400
LENOVO     ThinkPad T400s
LENOVO     ThinkPad T500

LENOVO     ThinkPad R61

LENOVO     ThinkPad X61s
LENOVO     ThinkPad X200
LENOVO     ThinkPad X200s
LENOVO     ThinkPad X200 Tablet
LENOVO     ThinkPad X300

LENOVO     ThinkPad SL
LENOVO     ThinkPad Z61p
LENOVO     ThinkPad W500


Almost all models of ThinkPad both IBM and Lenovo fails. There are lots of
system log in these reported bugs (generated by Linux), but it seems there is
no useful information about the suspend process. 

Is it possible that some kernel expert analysis these logs?

Cheers,
Wayne
Comment 18 Wayne 2010-02-25 03:01:54 UTC
(In reply to comment #16)
> then does the problem still exist if you blacklist the thinkpad-acpi driver?
> I assume the S3 on your laptops used to work w/o this driver.

Hi Zhang Rui,
Would you please tell me how to disable this driver?

Thanks,
Wayne
Comment 19 Zhang Rui 2010-02-25 03:08:02 UTC
If it's loaded as a module,
please add "black thinkpad_acpi" in /etc/modprobe.d/blacklist.conf and then reboot.
If it's built it,
please reboot with this boot option, thankpad_acpi.hotkey_report_mode=3.
Comment 20 Wayne 2010-02-25 16:26:05 UTC
(In reply to comment #19)
> If it's loaded as a module,
> please add "black thinkpad_acpi" in /etc/modprobe.d/blacklist.conf and then
> reboot.
> If it's built it,
> please reboot with this boot option, thankpad_acpi.hotkey_report_mode=3.

Thanks for you advice.

It still failed even disabled thinkpad_acpi. It's seems not the issue of ThinkPad acpi driver. (I tested by rmmod thinkpad_acpi and with kernel option you told me. It's build in)

I also tested suspend with PM_TRACE enabled (sync;echo 1>/sys/power/pm_trace;pm-suspend), and attached the dmesg when system die and rebooted. Would you please check if there is any useful information? There is no suspected driver reported (as 'hash matches' described in the document).

Thanks,
Wayne
Comment 21 Wayne 2010-02-25 16:28:14 UTC
Created attachment 25222 [details]
dmesg of suspend fail with pm_trace enabled

demsg when rebooted after a pm-suspend fail. 

sysnc;echo 1>/sys/power/pm_trace;pm-suspend
Comment 22 Wayne 2010-02-25 16:30:18 UTC
FYI

Hibernate works fine even though suspend failed on my ThinkPad R51 with Ubuntu 9.10.
Comment 23 M. Burger 2010-02-25 17:11:55 UTC
Also joined this site here because of having the same problems as Wayne. A little bit funny, just noticed that hibernation works after I read Wayne's comment.
Well, just wanted to let you know that indeed hibernation works on R51 (mine is a R51-2888).
And the method described on the Ubuntu-homepage for getting a demsg works, but delivers no information like a 'hash-match' for me, too, like Wayne said before.
Comment 24 M. Burger 2010-02-28 10:02:23 UTC
Hey, found here something really interesting: After I read this here, https://bugzilla.redhat.com/show_bug.cgi?id=539367, I also tried to set 'nomodeset' in Grub, and supending worked suddendly!

I don't know what happens when setting 'nomodeset' in Grub, but WLAN and other things continue working so...I think that's a good workaround :)
Comment 25 M. Burger 2010-02-28 10:10:56 UTC
'kay, just noticed that it disables video-playback because of disabling KMS, so...what now? =/
Comment 26 Rafael J. Wysocki 2010-02-28 12:00:30 UTC
Reassign to the Intel graphics people, I guess.
Comment 27 Wayne 2010-03-02 01:54:47 UTC
It's NOT Intel graphics specific bug I guess. ThinkPad R51 uses Intel graphic
card, but ThinkPad T42(p) and T43(p) use ATI graphic card, and they are fail
either. Some Lenovo ThinkPads (T61) that failed may use nVDIA card. If it's a
KMS bug, then it may be in the shared code and not in Intel card specific code
I think.
Comment 28 M. Burger 2010-03-02 07:42:36 UTC
So, now it would be good to know if setting 'nomodeset' in Grub at Thinkpads  with ATI or nVdia graphics-chips helps there, too, wouldn't it?
Comment 29 Rafael J. Wysocki 2010-03-02 19:37:49 UTC
Well, yes.

In the meantime, please check if commenting out the line

.resume = acpi_video_resume,

in drivers/acpi/video.c (line 89 in the current mainline) helps.
Comment 30 Wayne 2010-03-03 01:17:36 UTC
(In reply to comment #24)
> Hey, found here something really interesting: After I read this here,
> https://bugzilla.redhat.com/show_bug.cgi?id=539367, I also tried to set
> 'nomodeset' in Grub, and supending worked suddendly!
> 
> I don't know what happens when setting 'nomodeset' in Grub, but WLAN and
> other
> things continue working so...I think that's a good workaround :)

I tested my R51 and it works fine. Video playback no problem, suspend works. I will upgrade my T43p from Ubuntu 9.04 to 9.10 and give a try.

Cheers,
Wayne
Comment 31 Leonardo La Malfa 2010-03-03 10:06:10 UTC
I can't find the file. Please, write the entire location.
Comment 32 Wayne 2010-03-03 15:10:20 UTC
(In reply to comment #29)
> Well, yes.
> 
> In the meantime, please check if commenting out the line
> 
> .resume = acpi_video_resume,
> 
> in drivers/acpi/video.c (line 89 in the current mainline) helps.

Hi Leonardo,
I have upgrade my ThinkPad T43p laptop from Ubuntu 9.04 to 9.10 and suspend works flawlessly. It seems that it is a Intel video card issue. 

Because there are some ThinkPad T42/T43 Ubuntu 9.10 suspend failure report on Ubuntu site, I installed Ubuntu 9.04 on my T43p directly and didn't install 9.10. Until I found NOMODESET workaround, I upgrade it to 9.10 and found it there is no suspend issue.

My R51 don't have enough disk space to build the kernel, and I don't know if it possible to build it on my T43p and then install it on the R51 to test it? Or if somebody else to test if this change works?

Thanks,
Wayne
Comment 33 M. Burger 2010-03-03 15:56:09 UTC
I am currently about compiling my own kernel with the change mentioned by Wysocki 4 posts earlier and let you know if it helps.
And for the video playback I am currently using xine-based apps like Kafeeine, they work flawlessly, but other apps, like totem, stop working when setting 'nomodeset' and disabling KMS with that =/
Comment 34 Leonardo La Malfa 2010-03-03 16:56:05 UTC
(In reply to comment #32)

> Hi Leonardo,
> I have upgrade my ThinkPad T43p laptop from Ubuntu 9.04 to 9.10 and suspend
> works flawlessly. It seems that it is a Intel video card issue. 
> 
> Because there are some ThinkPad T42/T43 Ubuntu 9.10 suspend failure report on
> Ubuntu site, I installed Ubuntu 9.04 on my T43p directly and didn't install
> 9.10. Until I found NOMODESET workaround, I upgrade it to 9.10 and found it
> there is no suspend issue.
> 
> My R51 don't have enough disk space to build the kernel, and I don't know if
> it
> possible to build it on my T43p and then install it on the R51 to test it? Or
> if somebody else to test if this change works?
> 
> Thanks,
> Wayne

Hi Wayne, I followed instructions found here: http://www.ubuntu.com/getubuntu/releasenotes/910 to add the option nomodeset to the kernel boot options, and can confirm that suspend mode now seems to work on my Thinkpad as well. Hibernation, however, is still malfunctioning, and often waking up results in a kernel panic (freeze + caps lock flashing).

Also, the new nomodeset option seems to affect videos being played especially in Totem. When I play a movie and try to move the window, the video disappears behind a black square, and nothing much changes if I maximise it (sometimes some leftovers from other windows remain over it, as if it doesn't redraw correctly). While moving the window, video seems to reappear, but when I stop it's gone again, and only audio works. This is exactly the same as it was under Jaunty, which would be a regression in my view. If those videos are played in VLC the situation improves, but is still funny (if another window moves over it, the black screen reappears until VLC is moved again, or blue lines surround the window moving on top, etc.). So it seems this workaround would solve one issue, but would cause a new one.
Comment 35 M. Burger 2010-03-03 21:38:44 UTC
Well, if I didn't do any mistakes while the compiling-procedure, commenting-out the line

resume = acpi_video_resume

in drivers/acpi/video.c didn't do anything, as soon as I disable nomodeset in Grub (in my test-kernel with the out-commented line above and the standard-karmic-kernel 2.6.31-19-generic) the old standy-freeze comes up again.

I wasn't quite sure how to comment out code in C/C++, I made it like in the other examples in the file, so it looks like this:

[...]
/*
 * Commenting out for testing on 03-March-2010
 *		.resume = acpi_video_resume,
 */
		.notify = acpi_video_bus_notify,
		},
};
[...]

I'm quite sure that is correct, so, commenting-out the line mentioned from R. Wysocki doesn't change anything I'd say.
Comment 36 Wayne 2010-03-04 01:47:10 UTC
(In reply to comment #35)
> Well, if I didn't do any mistakes while the compiling-procedure,
> commenting-out
> the line
> 
> resume = acpi_video_resume
> 
> in drivers/acpi/video.c didn't do anything, as soon as I disable nomodeset in
> Grub (in my test-kernel with the out-commented line above and the
> standard-karmic-kernel 2.6.31-19-generic) the old standy-freeze comes up
> again.
> 
> I wasn't quite sure how to comment out code in C/C++, I made it like in the
> other examples in the file, so it looks like this:
> 
> [...]
> /*
>  * Commenting out for testing on 03-March-2010
>  *        .resume = acpi_video_resume,
>  */
>         .notify = acpi_video_bus_notify,
>         },
> };
> [...]
> 
> I'm quite sure that is correct, so, commenting-out the line mentioned from R.
> Wysocki doesn't change anything I'd say.

Hi M. Burger,
You comment out is correct.

It seems a Intel video driver issue because I can reproduce it on my Thinkpad T43p (with a ATI FireGL video card) with Ubuntu 9.10, even thought there some suspend fail reports for T42p, T43 on Ubuntu web site. May it's other suspend issue that has been fixed on recent 2.6.31 kernel? I have noticed there are some suspend bugs been fixed such as close lid of notebook suspend failure.

Cheers,
Wayne
Comment 37 M. Burger 2010-03-04 13:25:46 UTC
> Hi M. Burger,
> You comment out is correct.
> 
> It seems a Intel video driver issue because I can reproduce it on my Thinkpad
> T43p (with a ATI FireGL video card) with Ubuntu 9.10, even thought there some
> suspend fail reports for T42p, T43 on Ubuntu web site. May it's other suspend
> issue that has been fixed on recent 2.6.31 kernel? I have noticed there are
> some suspend bugs been fixed such as close lid of notebook suspend failure.
> 
> Cheers,
> Wayne

Ehm, have you done a mistake when writing your last message Wayne? Because you wrote it's an Intel video driver issue but in the same sentence you wrote you can reproduce this bug with a Thinkpad using an ATI FireGL card?
And I'm quite sure this bug hasn't been fixed yet because I also tried newer kernels (2.6.32 + *.33) and the problem still exists with them.
Comment 38 Wayne 2010-03-08 07:33:21 UTC
(In reply to comment #37)
> > Hi M. Burger,
> > You comment out is correct.
> > 
> > It seems a Intel video driver issue because I can reproduce it on my
> Thinkpad
> > T43p (with a ATI FireGL video card) with Ubuntu 9.10, even thought there
> some
> > suspend fail reports for T42p, T43 on Ubuntu web site. May it's other
> suspend
> > issue that has been fixed on recent 2.6.31 kernel? I have noticed there are
> > some suspend bugs been fixed such as close lid of notebook suspend failure.
> > 
> > Cheers,
> > Wayne
> 
> Ehm, have you done a mistake when writing your last message Wayne? Because
> you
> wrote it's an Intel video driver issue but in the same sentence you wrote you
> can reproduce this bug with a Thinkpad using an ATI FireGL card?
> And I'm quite sure this bug hasn't been fixed yet because I also tried newer
> kernels (2.6.32 + *.33) and the problem still exists with them.

Sorry M. Burger, my mistake. It should be I CAN'T reproduce this issue on ThinkPad T43 (with ATI card). Suspend works flawlessly on T43. 

Cheers,
Wayne
Comment 39 M. Burger 2010-03-09 17:44:28 UTC
...Like I thought :)

So, what now? With Ubuntu 10 KMS will be essential needed (I read in the net sth. about the X-Server and the Intel-driver will require it and can't work without it) so I think this bug's solution is high-needed.
If you need more information for fixing this issue just let me now...
Facing Ubuntu 10, I'm hoping this gets fixed in the next time =/

But at this time, thanks for any work you've already done, I use Linux for about 3 years and still loving it :)
Comment 40 M. Burger 2010-04-30 21:08:59 UTC
Any news, or is this issue "fixed" by removing support for the i855-graphics-chips? =/
Comment 41 Jesse Barnes 2010-05-18 21:44:58 UTC
No, not removed.  Abused maybe, but not killed outright.

Maybe Yakui has an idea.
Comment 42 adinov 2010-06-03 02:52:04 UTC
I have same issue with a Thinkpad X41 after upgrading.
Can we get some indication of any progress on this bug? Please?
Its holding me back from upgrading my main Hardy system.
Comment 43 Jesse Barnes 2010-07-02 23:19:31 UTC
If it broke after an upgrade you should be able to bisect the offending commit.
Comment 44 Jesse Barnes 2010-07-23 19:40:11 UTC
Could be a dupe of:
https://bugs.freedesktop.org/show_bug.cgi?id=22126

please check the patch in that bug.