Gutsy Gibbon : Suspend/Hibernate lock up on resume with Thinkpad T61p

Bug #139089 reported by Robbob on 2007-09-12
26
This bug affects 1 person
Affects Status Importance Assigned to Milestone
acpi-support (Ubuntu)
Undecided
Unassigned
hal-info (Ubuntu)
Undecided
Unassigned

Bug Description

The laptop appears to go into suspend or hibernate ok.
On wakeup a single beep is heard, a little bit of disk activity is made and then nothing more.

The laptop has to hard powered off and restarted.

Looking in /var/log/messages the last entries have :-

Sep 12 12:45:39 rob-t61 kernel: [ 93.923888] sd 0:0:0:0: [sda] Starting disk
Sep 12 12:45:39 rob-t61 kernel: [ 94.449014] Restarting tasks ... <6>usb 1-2: USB disconnect, address 2
Sep 12 12:45:39 rob-t61 kernel: [ 94.478219] done.
Sep 12 12:45:39 rob-t61 kernel: [ 94.548253] hald-addon-acpi[5391]: segfault at 0000000025c831f8 rip 00002b2de5ac86ab rsp 00007fffc56c9230 error 4
Sep 12 12:45:39 rob-t61 kernel: [ 94.603879] usb 5-2: USB disconnect, address 2
Sep 12 12:45:39 rob-t61 kernel: [ 94.843535] usb 5-2: new low speed USB device using uhci_hcd and address 3
Sep 12 12:45:39 rob-t61 kernel: [ 95.019400] usb 5-2: configuration #1 chosen from 1 choice
Sep 12 12:45:39 rob-t61 kernel: [ 95.035873] input: Logitech USB Optical Mouse as /class/input/input10
Sep 12 12:45:39 rob-t61 kernel: [ 95.035954] input: USB HID v1.10 Mouse [Logitech USB Optical Mouse] on usb-0000:00:1d.0-2
Sep 12 12:45:40 rob-t61 kernel: [ 95.574553] usb 1-2: new full speed USB device using uhci_hcd and address 3
Sep 12 12:45:40 rob-t61 kernel: [ 95.752431] usb 1-2: configuration #1 chosen from 1 choice

Robbob (rob-kirkbride) wrote :
Robbob (rob-kirkbride) wrote :
Robbob (rob-kirkbride) wrote :
Robbob (rob-kirkbride) wrote :
Robbob (rob-kirkbride) wrote :

Note the laptop has an NVIDIA card.

I'm using the 64bit version of Gutsy Gibbon Tribe 5 with all updates as of 12.00 GMT 12-Sep-2007

Christoph Lechleitner (lech) wrote :

With 2.6.22-10-generic suspend to ram sometimes "worked" (after setting POST_VIDEO=false in /etc/default/acpi-support).
Unfortunatley, X was incredibly and unusable after resume, which seems to be an NVidia problem promised to be solved with the next driver after nvidia-glx-new 100.14.11.

With 2.6.22-11-generic suspend went back to die-during-resume state.
This is with T61p, NVidia Quadro FX 750M, current gutsy i386 and amd64.

As thinkpad-acpi includes support for new T61/X61 models only for kernel 2.6.23 (and suspend/resume is of course in need of good interaction with a machine's ACPI implementation) I am afraid 7.10 might not allow us to use all features of our far-too-new ThinkToys.

We might want to switch to 2.6.23 (and perhaps xorg 7.3) on our own, but I won't start that kind of work before I can be sure 7.10 won't satisfy my need to suspend/resume.

Robbob (rob-kirkbride) wrote :

I must admit when I saw other reports for problems with the Thinkpad T61 I thought that would mean I was covered.
I wonder if it's the NVIDIA cards that is making ours not work.

I do hope it can be made to work as I was very hopeful I would have good support with Linux given that the Thinkpads seem well catered for by the community. I notice that they say they will work with Suse Enterprise but I'm not sure whether that includes Hibernate/Suspend or even if I want to use Suse Enterprise!

Christoph Lechleitner (lech) wrote :

Don't worry.
1. ThinkPads have always been a popular device for Linux users, including many professional developers.
2. The Centrino Pro chipset used in the most recent models are absolutely mainstream and also used by other manufacturers including HP and especially Dell who has chosen to sell and therefore support Ubuntu based notebooks.

Therefore you can be sure every little feature will work well - in time.

Still it might happen that Ubuntu 7.10 might come too early to cover everything.

But there is hope suspend/resume might work with 7.10 eventually, because:
In contradiction to what I wrote above, thinkpad-acpi 0.15 (and 0.16) is not restricted to kernel 2.6.23+, there are tarballs for older kernels, including some 2.6.22.x releases.
See http://sourceforge.net/project/showfiles.php?group_id=117042&package_id=230205

Robbob (rob-kirkbride) wrote :

Yes that worked.

I built the current gutsy kernel with the patch above compiled in and hibernate and suspend magically worked!

The problem I had was that the nvidia driver didn't work. It's possible it would have worked if I'd just copied the modules from the gutsy one as maybe nothing has changed to affect it but I haven't had chance yet.

Why can't t the driver be included in the kernel? Bug #129125 also calls for it too. It seems like the patch specifically deals with Thinkpads so I don't see any major issues with regression.

I'm happy to do more testing if required.

Christoph Lechleitner (lech) wrote :

Bad thing is, the patch did'nt work for me :-((

Do you have any special kernel parameters?
What is the value of POST_VIDEO in your /etc/default/acpi-support?
Which X driver are you using?

Robbob (rob-kirkbride) wrote :

Yes my POST_VIDEO is set to false.

I was using the vesa driver at the time because I'm not sure how to build the restricted modules for my custom kernel.

Christoph Lechleitner (lech) wrote :

Thanks for the fast reply.
So this seems to leave the nvidia driver as bad guy.
Let's all hope they finish their next release really soon.

Robbob (rob-kirkbride) wrote :

Can you hibernate/suspend from the command line?

If so, I'd be happy to change my virtual console to a text based one. Hibernate/Suspend, wake up and virtual console back.

Christoph Lechleitner (lech) wrote :

With kernel 2.6.22-10 I could suspend from tty1-6 using the script from
http://thinkwiki.org/wiki/Installing_Ubuntu_7.04_%28Feisty_Fawn%29_on_a_ThinkPad_T61#Suspend

However I am not sure if this is the same suspend operation that occurs when pressing Fn-F4 while in X.

With my former ThinkPads, A31 (ACPI off, APM on) and T41 (APM as well as ACPI), and after rmmoding the network module and after unplugging the USB mouse, I was able to use both suspend hotkeys Fn-F4 and Fn-F12 while in X or text console, and of course that's what we'd like.

In Debian discussions I found hints to use hibernation or swsusp package, which operate in user space only. I guess all of the script solutions just echo stuff to /proc/acpi/sleep.

I'll continue my tests with vesafb driver tomorrow. It's late here ;->>

Robbob (rob-kirkbride) wrote :

That script didn't seem to work for me.

I hope your tests show the new ACPI driver to be stable with vesa but personally I'd be inclined to sacrifice the nvidia driver for vesa if it meant I got hibernate/suspend. Once that's working hopefully it then becomes a matter of getting nvidia to fix their driver.

Christoph Lechleitner (lech) wrote :

With vesa driver, suspend to ram works for me.
However, I can't get the full 1920x1200 for now, fighting on it right now.
Of course the only real solutions is a better nvidia driver, but suspend/resume is more important for me than the performance advantage of the nvidia driver.
With AMD/ATI opening their drivers, Dell wanting to support linux on all laptops, and the current nvidia driver crashing with compiz for gutsy, I think they should begin to feel some pressure.

Robbob (rob-kirkbride) wrote :

Thanks for your efforts and I agree with your sentiment.
Let me know if you need me to do any more testing or if I can aid.

Christoph Lechleitner (lech) wrote :

I just got vesa working with full res. 1920x1200. (I'll BLog how some day soon)

Only remaing problem so far:
GoogleEarth does not even run slow but crashes X ;-((
I think because xorg's software GLX, unlike the nvidia driver, does not provide 32bit compatibility on 64bit installations.
Well, I can live with that for quite some time.

For now, with new thinkpad_acpi and vesa drivers, all major stuff works:
X, suspend/resume, sound, WLan, even VMWare and probably bluetooth (no time to test right now, but seems ok).

Skype and Opera lack 64bit binaries, but that's their large fault and a major mistake (as the current generation of machines supporting 4-Gig-RAM will drive everyone to 64bit installations).

Robbob (rob-kirkbride) wrote :

I'm sure many people would be interested in your blog.
However that sounds like the decision has been taken not to include the latest thinkpad_acpi. Who makes that decision - anyone we can petition!?

Christoph Lechleitner (lech) wrote :

I do not think my (mini) BLog is that interesting, but there are some Ubuntu hints ;-))

I'd have published the VESA hints earlier this day, but due to a Tapestry 4.1 incompatibility in my website I had not been able to log in at all ;->>>

Here's the deep Link to the VESA Mini-HowTo:
https://secure.ibcl.at/ibclweb/ibclweb?component=%24DirectLink&page=ShowBLogOverview&service=direct&session=T&sp=l148

Christoph Lechleitner (lech) wrote :

As of decision making in Ubuntu development, I think there is plenty of room for improvement.
This is one of the topics where SuSE is better and probably one reason for why SuSE's market share has grown again, despite Ubuntu's popularity.

If gutsy really is published with thinkpad_acpi <0.15, I am gonna put kernel packages for i386+amd64 in my own archive http://deb.ibcl.at/ or in a PPA.

However, according to the changelog of today's update of the acpi-support package, someone at Ubuntu is currently working on thinkpad stuff, and as the thinkpad_acpi 0.16 patch integrates in linux-source-2.6.22 without the sligthest problems there still is hope it's gonna make it into gutsy.

Sitsofe Wheeler (sitsofe) wrote :

Robbob:
I would be amazed if having thinkpad_acpi changed the outcome of your hibernation. I think you will need to do some basic troubleshooting to determine where your problem lies. Can you indicate whether suspend and resume while using the nv (or vesa) driver instead of the NVIDIA binary driver? How does it fail? If it resumes and the screen is blank does caps lock work? (I know the following probably won't be possible if you have existing data you need to preserve but I will ask anyway) Are things any better in Gutsy (this is assuming the vesa/nv driver didn't work at all)?

Christoph Lechleitner (lech) wrote :

Sitsofe Wheeler, it seems you work too hard ;-))

As I read it, the new thinkpad_acpi 0.16 solved suspend/resume for Robbob.
He uses VESA driver anyway because he did'nt know how to build an according linux-restricted-modules package (I wonder if this would be needed to rebuild at all?).

I can confirm for current gutsy amd64 that with a patched kernel and vesa driver, suspend to ram and disk work perfectly on my T61p.

I also can confirm that using the nvidia driver causes a crash during resume.
With 2.6.22-10 suspend 2 ram was possible (using the script from thinkwiki, not using the fn-hotkeys), but X was unusable slow after resume.

NVidia knows about this problem (crash on resume in some installations, X slow after resume on other installations) (and some other problems of the 100.11.14 driver).
According to their forum they are working on a new driver with pressure, but it seems they need more time for this one;
probably they try to solve too many things at a time:
+ there are suspend/resume problems, with almost every hot chip currently sold in top laptop
+ they to want to become compatible with the new ABI of just released xorg 7.3 without breaking with earlier xorg releases like 7.2
+ your certainly know about the compiz patch that just became upstream but causes crashes when meeting the nvidia driver
...

Christoph Lechleitner (lech) wrote :

Somehow the recent acpi* updates killed my resume capabilities ;-((
At the moment I don't have the time to track down details ...

Robbob (rob-kirkbride) wrote :

Groan :-(
I was just shutting down until further progress was made so I hadn't tried it.

Christoph Lechleitner (lech) wrote :

I just resumed successfully again.
It seems the kernel parameter acpi_sleep=s3_bios is crucial after all.
I should not touch /boot/grub/menu.lst that often and use shift-D in vi that ofen ;-))
Sorry if I really bothered you because of my incautiousness, I am gonna add more experience reports as gutsy (hopefully) matures.

Christoph Lechleitner (lech) wrote :

First a small success report:
During the past 30 hours, I suspended to RAM 4+ times, and either the power manager or the BIOS induced one suspend to disk due to poor battery state (best CPU, 4 Gig RAM, best GPU, all so power consuming ...).
I had no problem resuming, even with such evil circumstances as removing an USB device during suspension.

The "bad" news: I just have to try the brand new NVidia driver right now ;->>, reports follow.

Christoph Lechleitner (lech) wrote :

Just FYI some anti-nvidia-confirmations:
As suspected, no resume with manually installed brand new nvidia driver 100.14.19 (with neither 2.6.22-11-generic kernel nor "our" thinkpad_acpi upgraded 2.6.22.6)
Nvidia*run --uninstall, apt-get install --reinstall libgl1-mesa-glx, back to VESA, resume ok again.

I sincerely hope that gutsy gets enough time (a release postponement if necessary) to resolve all these NVidia problems and other Centrino Pro issues.
I know it's NVidia fault (and Intel's fault as of the Centrino Pro problems), not any Linux developer's, but once again: If Ubuntu's tries to force the users to blame NVidia, it knowingly creates a loose-loose-loose situation!
Especially we notebook users can't easily pull out the NVidia GPU and plug in an Intel or ATI GPU, and even worse, at the moment virtually all top laptop models (those with 64bit dualcores and 4 GB RAM) come with NVidia GPUs.

Robbob (rob-kirkbride) wrote :

That's very disappointing :-(

Thanks for trying it Christoph. Can you do me a favour and attach your xorg.conf (with vesa). Although I got it to work it never looked quite right. I suspect I'm not getting the cvt bit correct.

Thanks.

Robbob (rob-kirkbride) wrote :

Christpoh - Thanks for posting your file.

Suspend works for me now as well (with stock kernel). However, I think I need the updated thinkpad_acpi for hibernate to work.

Very annoying that Nvidia have released a new version of the driver and not fixed the suspend issue!

Christoph Lechleitner (lech) wrote :

With today's update (or yesterday's, many traffic these days) I seem not to need the thinkpad_acpi update any more, as long as I use the VESA driver.
I just did one suspend 2 ram, one hibernate, resume was ok both times.

I use amd64 only, so if Robbob tests with i386 this issue could eventually be assigned to the nvidia-glx-new package.

Let's just hope NVidia solves the problem soon.
Fortunately, their driver is easy to install for expierienced users, so personally I could live with manual driver upgrades after gutsy release.

One more observation:
With nvidia drivers (and nvidia's NV-GLX), glx apps die immediately with a memory fault when started as normal user, but work when started as root.
Looks like a wrong file mode, but I don't care for now.

Christoph Lechleitner (lech) wrote :

On the other hand, suspend to ram worked with nvidia 100.11.14 and kernel 2.6.22-10-generic, so it could be a two edged sword after all!?

X have been unusable slow after resume with that combination, but according to the NVidia forum http://www.nvnews.net/vbulletin/showthread.php?t=94258 this seems fixed at least for the prior GPU NVS140M on an ThinkPad R61.

phlegm (daveshome) wrote :

I am also having this suspend problem but with a T60 and an ATI card. Running Gutsy with the latest updates.

Christoph Lechleitner (lech) wrote :

Because of the release of gutsy beta, I re-did most of my tests today.
Still no change though:

gutsy beta with nvidia driver (gutsy package nvida-glx-new 100.14.19) kills the machine during resume (although I sometimes was able to ping or even ssh it).

gutsy beta with nv driver (the open source driver which now basically can operate my FX 750 M) kills the machine during resume.

gutsy beta with vesa driver allows suspend/resume without problems. I even may leave the network and usb stuff active.

Christoph Lechleitner (lech) wrote :

After those many upgrades today, I did more research testing - and have partial success!

Calling the script attached (based on the one from ThinkWiki) as root now safely suspends to ram and I even have reasonable 2D and 3D performance after resuming.

Suspend to disk or any suspend using Fn+F4 or Fn+F12 do not work yet.

Christoph Lechleitner (lech) wrote :

Found some more hints and a new thinkpad-acpi 0.17, so here are more test results:

1. with kernel parameter maxcpus=1 (hint in nvidia forum), nvidia 100.11.19 (.deb)
suspend 2 ram works fine.
hibernation does not work, but dies much later.

2. with new thinkpad-acpi 0.17-20071002 patched into ubuntu's linux-source-2.6.22:
suspend 2 ram works fine.
hibernation does not work, but dies much earlier.

3. with nvidia-diver .09 (hint in nvidia forum) (manual install):
suspend 2 ram works fine.
hibernation does not work, but dies much later.

So, there are several ways now to get suspend to RAM working (with nvidia drivers active), but still only vesa or nv driver (might) allow hibernation.

VS (storvann) wrote :

Here's how I got suspend to ram working on my T61 with a Quadro NVS 140M

With nvidia 100.14.19:
kernel parameter acpi_sleep=s3_mode

vesa drivers:
acpi_sleep=s3_bios

With both configurations above I have made the following changes (that I'm aware of):
In /etc/default/acpi-support:
SAVE_VBE_STATE=false
POST_VIDEO=false

I'm not using the thinkpad-acpi module, but I don't think that should make much of a difference.
(hibernate is not working with the nvidia driver)

Christoph Lechleitner (lech) wrote :

Confirmed for Quadro 750 M: nvidia + acpi_sleep=s3_mode allows suspend to ram.
Thanks for the hint.

thinkpad_acpi is currently working on the backlight brightness, where the T61 introduced more levels.
But as hibernation is very ACPI specific, I tried anyway.

I'm gonna try combining s3_mode with maxcpus=1 and driver .09.

VS (storvann) wrote :

Are you saying brightness adjustment works with nvidia + latest thinkpad_acpi patch? I only got brightness adjustment working with the vesa driver. (acpi video module allowed all 16 levels)

Christoph Lechleitner (lech) wrote :

No I just said they are working in the area of brightness control in the current T61 generation.
I am not sure this concerns the GPU driver at all, but brightness control seems not to be working yet on some T61 models.
Details can be found in the mailing lists of linux-thinkpad.org.

Nothing mentioned so far has fixed the freeze on resume when using proprietary drivers (from a package) on my T61 (6460-7EU)

Alessandro Tanasi (jekil) wrote :

On my Z61p with ati card and latest gutsy suspend don't work.

Tobias (aephsi) wrote :

Same problem here with latest gutsy and Thinkpad X23. Kernel version: 2.6.22-14

I got it too, with official Gutsy and Thinkpad T60, 2.6.22-14, ATI radeon X1400 and fgrlx.

Christoph Lechleitner (lech) wrote :

Eventually good news.

After investing in a docking station and a 24" TFT, I had to try the nvidia driver again (the VESA driver does not support or not understand the up to 3 available monitors when using all external video connectors), and I have suspend to RAM perfectly working now on my T61p with NVidia Quadro FX 570M under gutsy amd64 with -generic kernel.

Suspend to disk still kills everything, but suspend to RAM more or less does it for me, and external video plugs (activated through nvida-settings) and GLX resp. googleearth all work, too.

I also don't know which of the many upgrades since gutsy's releases was the crucial one (probably more than one), after all this problem concerns at least the kernel modules, ACPI-support, thinkpad packages, nvidia's drivers and kernel modules, the thinkpad's BIOS, and the interaction of all these pieces.
I would'nt wonder if the usage of a docking station (advanced mini dock in my case) causes some behaviour to change a tiny but crucial bit ;-))

Anyway, here is what I assume are crucial keys to success:
+ have nvidia-glx-new 100.14.19 installed
+ install all gutsy updates as of 2007-12-22
+ in /etc/default/acpi-support have SAVE_VBE_STATE=false, POST_VIDEO=false, SAVE_VIDEO_PCI_STATE=true, ACPI_SLEEP=true
+ in /boot/grub/menu.list have the kernel option acpi_sleep=s3_mode, e.g. in defoptions= and your default kernel's line.
+ eventually have a boot time script (before gdm!) with e.g. rmmod nvidia ; insmod nvidia_new

Merry X-mas ;*)

Christoph Lechleitner (lech) wrote :

Has anybody tried the new 169.07 driver?

David Pugal (david-ut-ee) wrote :

I have tried.
It mostly works, but there are occasionally some weird problems. Usually it comes out from standby as I open my laptop's hood. But there are cases where screen stays blanck and this "suspend light just shuts off"... Then I have to press power button.. after few times it comes out from standby, but then it shuts down.. It doesn't always happen, so I've no idea what is causing it and if it is my drivers fault at all :(.
I have the same configuration as Christopher brought out, except SAVE_VIDEO_PCI_STATE=true was commented out for some reason.
Also, I have thinkpad t21 and I use driver from nvidia page. I don't know if there is the newest driver already in ubuntu repositories. I still haven't updated to the latest kernel available in gutsy-updates. I don't know if it can change anything. I will try out soon and let you know..

Christian Iversen (chrivers) wrote :

I might have solved this bug. Please take a look here:

https://bugs.launchpad.net/ubuntu/+source/hal-info/+bug/235284

Daniel T Chen (crimsun) wrote :

Is this symptom still reproducible in 8.10 RC or later?

Changed in acpi:
status: New → Incomplete
David Pugal (david-ut-ee) wrote :

So far the suspend has worked. I also have the modified acpi-support file and from my previous configuration I have lenovo.fdi files still existing (as described in http://www.thinkwiki.org/wiki/Installing_Ubuntu_8.04_(Hardy_Heron)_on_a_ThinkPad_T61#Suspend_with_Nv140m), though, I'm not sure if this file really changes anything. If the resume hangs at least once, I'll post here.

Martin Pitt (pitti) wrote :

acpi-support is deprecated, wont fix it there. Quirks belong into hal-info now.

Changed in acpi-support:
status: New → Invalid
Martin Pitt (pitti) wrote :

This was successfully tested in comment 53 three months ago without a followup, assuming fixed.

Thank you!

Changed in hal-info:
status: Incomplete → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers