Most recent kernel where this bug did *NOT* occur: n/a. No kernel apprears to work. Distribution: Fedora Core 6. Hardware Environment: Lenovo 3000 N100, type:0786-4HG NVIDIA GeForce Go 7300 with nv driver. Software Environment: Standard FC6 install, with kernel from linus git tree. Problem Description: After suspend to ram (using pm-suspend, or just echo mem > /sys/power/state) the laptop is unable to resume and appears hardlocked. The suspend goes well, the computer powers down to sleep mode, but on resume the backlight controller goes on (hardware controlled) and nothing more appears on the screen. ctrl-alt-del does nothing, and the only thing to make the laptop do *anything* is a hard power off. I don't know how to debug this as this laptop has no serial port, so I cannot see any oops that may happen. Please ask if you want any more information than I've attached, and I'll provide it for you as soon as I can. Many thanks for any help with this. Steps to reproduce: 1. Buy Lenovo 3000 N100 laptop 2. Suspend to RAM 3. Resume by pressing any key
Created attachment 10147 [details] lsmod output
Created attachment 10148 [details] dmesg output
please try to remove as many modules as possible before re-testing S3. If no luck, please try to play with Speaker (since you don't have serial port) by inserting the Beep code in the S3 resume code path. if you hear Beep when S3 resume, you can move on to the next place. If not, the issue is before the place with just inserted Beep code. You need to do that until you get to the right place of the S3 hang.
The following code is from Pavel. #define BEEP \ inb $97, %al; \ outb %al, $0x80; \ movb $3, %al; \ outb %al, $97; \ outb %al, $0x80; \ movb $-74, %al; \ outb %al, $67; \ outb %al, $0x80; \ movb $-119, %al; \ outb %al, $66; \ outb %al, $0x80; \ movb $15, %al; \ outb %al, $66;
Hi, I have problems with ACPI on Lenovo N100 3000 too. See this bug: http://bugzilla.kernel.org/show_bug.cgi?id=7673
Luming, where is the resume path assembly code? I've removed all the modules I can, and still the resume hang happens. I'm pretty comfortable with assembly, but I don't know where in the tree to look. Thanks.
Created attachment 10162 [details] dmesg with PM DEBUG I've attached the output of dmesg when CONFIG_PM_DEBUG=y and CONFIG_PM_TRACE=y - hope this helps in some way.
Created attachment 10164 [details] dsl file for my lenovo bios
Using acpi_os_name="Microsoft Windows XP" also doesn't change things.
I've tried the BEEP thing as detailed in http://lkml.org/lkml/2006/9/10/123 and I get no beep sound on resume. I'm close to throwing this laptop against the wall! :-)
noapic and nolapic don't seem to make much difference either...
Well, let's say that that "make the machine meet the wall at the high speed" seems like quite an viable option to me? :-) Try it with minimum set of modules (but I'm not sure if it will help). No, we do not want that nvidia module around. noapic/nolapic were good tries... I'm not sure if beeping is _guaranteed_ to work. Can you try inserting jmp 0xffff:0 early into resume, to force it to reboot? You are not using any acpi_sleep= command line options, are you? (You should not). Oh, and last but not least... does s2disk work for you? That's often the first thing to debug.
> make the machine meet the wall at the high speed... It's got two more days; I've already had enough problems just changing the backlight brightness... > Try it with minimum set of modules... Built with a minimum config (and as much stuff rmmod'd as possible), no binary drivers of course. > Can you try inserting jmp 0xffff:0 early into resume No luck, either with jmp 0xffff, jmp 0x0 or lcall $0xffff,$0. I've tried adding it just after wakeup_code_start which I guess has to be run first. > does s2disk work for you? Yes, echo -n disk > /sys/power/state produces a correct hibernate. Suspend also does also work in Windows XP, but only God knows how ;-) Thanks for your help.
Created attachment 10220 [details] the _WAK method Does this _WAK method look correct to you guys?
Can you please check the 2.6.22-rc5 kernel?
Still nothing, even with git from today.
Can you please run 's2ram -i' (http://en.opensuse.org/s2ram) and post the output?
There are some important suspend-related fixes in the current Linus' tree. Can you test the 2.6.23-rc9 kernel, or 2.6.23 final when it's out, please? [I'm going to close this entry if there's no response in two weeks from now.]
As I said, closing. Please reopen if necessary, thanks.