Description of problem: After hibernate with pm-hibernate, followed by resume, the CPU fan stays off. This makes the notebook very quiet, but also very hot. The power button fails to react to presses (except when held down for 4 seconds). Version-Release number of selected component (if applicable): kernel-2.6.15-1.2054_FC5 pm-utils-0.15-1 How reproducible: Every time Steps to Reproduce: 1. Get a HP nx8220 notebook 2. Turn it on, log in 3. pm-hibernate 4. Resume Actual results: Fans stay off, ACPI power button does not work Expected results: Fans work normally, ACPI power button works Additional info:
A new kernel update has been released (Version: 2.6.18-1.2200.fc5) based upon a new upstream kernel release. Please retest against this new kernel, as a large number of patches go into each upstream release, possibly including changes that may address this problem. This bug has been placed in NEEDINFO state. Due to the large volume of inactive bugs in bugzilla, if this bug is still in this state in two weeks time, it will be closed. Should this bug still be relevant after this period, the reporter can reopen the bug at any time. Any other users on the Cc: list of this bug can request that the bug be reopened by adding a comment to the bug. In the last few updates, some users upgrading from FC4->FC5 have reported that installing a kernel update has left their systems unbootable. If you have been affected by this problem please check you only have one version of device-mapper & lvm2 installed. See bug 207474 for further details. If this bug is a problem preventing you from installing the release this version is filed against, please see bug 169613. If this bug has been fixed, but you are now experiencing a different problem, please file a separate bug for the new problem. Thank you.
I have upgraded to kernel-2.6.18-1.2708.fc6 and pm-utils-0.19-3. The problem still exists, with the same symptoms.
I use kernel-2.6.18-1.2798.fc6 on an HP compaq nc6000 laptop. My problem is _almost_ the same: - pm-hibernate causes the lowest fan speed setting to fail when on AC power: when using the AC adapter, the fan should always be running on lowest speed. Higher temperatures still trigger the higher fan speeds. N.B.: when not plugged in to AC, lowest fan speed works after resume (need to make sure the fan is off when running pm-hibernate). - pressing the "sleep" key on my laptop suspends it (S3). After resume, none of the fan speed settings work. - the pm-suspend script is unusable for me, since the laptop locks up on wake up. Playing with the fan controls in /proc/acpi/fan gives the following: - /proc/acpi/fan/C212/state is set to "on", which translates to lowest speed - /proc/acpi/fan/C211/state is set to "off", as are C210 and C20F - When echoing "on" to /proc/acpi/C211/state, the fan speeds up - Echoing "off" to any of the fan controls has no effect - Unplugging the AC adapter switches off the fan (C211 is still set to "on", while C212 is set to "off") - Plugging AC back in does _not_ switch on the fan - After about a minute, the fan switches back on (C211 has been automatically reset to "off") P.S. I should note that i2c has been disabled for this laptop, as per Bug # 193209. P.P.S. Ever since I use above kernel, I persistently get a backtrace on each resume. Managed to recover the following from my /var/log/kernel: Oct 31 08:51:14 localhost kernel: swsusp: Restoring Highmem Oct 31 08:51:14 localhost kernel: BUG: sleeping function called from invalid context at kernel/rwsem.c:20 Oct 31 08:51:14 localhost kernel: in_atomic():0, irqs_disabled():1 Oct 31 08:51:14 localhost kernel: [<c04051db>] dump_trace+0x69/0x1af Oct 31 08:51:14 localhost kernel: [<c0405339>] show_trace_log_lvl+0x18/0x2c Oct 31 08:51:14 localhost kernel: [<c04058ed>] show_trace+0xf/0x11 Oct 31 08:51:14 localhost kernel: [<c04059ea>] dump_stack+0x15/0x17 Oct 31 08:51:14 localhost kernel: [<c0439446>] down_read+0x12/0x20 Oct 31 08:51:14 localhost kernel: [<c0431601>] blocking_notifier_call_chain+0xe/0x29 Oct 31 08:51:14 localhost kernel: [<c05a9798>] cpufreq_resume+0x118/0x135 Oct 31 08:51:14 localhost kernel: [<c0551440>] __sysdev_resume+0x20/0x53 Oct 31 08:51:14 localhost kernel: [<c0551583>] sysdev_resume+0x16/0x47 Oct 31 08:51:14 localhost kernel: [<c0555767>] device_power_up+0x5/0xa Oct 31 08:51:14 localhost kernel: [<c0442360>] swsusp_suspend+0x74/0x90 Oct 31 08:51:14 localhost kernel: [<c04427f6>] pm_suspend_disk+0x43/0xc9 Oct 31 08:51:14 localhost kernel: [<c0441959>] enter_state+0x53/0x176 Oct 31 08:51:14 localhost kernel: [<c0441b01>] state_store+0x85/0x99 Oct 31 08:51:14 localhost kernel: [<c04a5fe6>] subsys_attr_store+0x1e/0x22 Oct 31 08:51:14 localhost kernel: [<c04a60d9>] sysfs_write_file+0xa7/0xce Oct 31 08:51:14 localhost kernel: [<c046f805>] vfs_write+0xa8/0x159 Oct 31 08:51:14 localhost kernel: [<c046fe32>] sys_write+0x41/0x67 Oct 31 08:51:14 localhost kernel: [<c0404013>] syscall_call+0x7/0xb Oct 31 08:51:14 localhost kernel: DWARF2 unwinder stuck at syscall_call+0x7/0xb Oct 31 08:51:14 localhost kernel: Leftover inexact backtrace: Oct 31 08:51:14 localhost kernel: =======================
Please try unloading the acpi modules prior to suspending. This may help. You might also using the resources at http://acpi.sourceforge.net/ to check your DSDT is ok.
Exactly the same problem here with : HP Compaq nx8220 2.6.18-1.2849.fc6 pm-utils-0.19-3 also tried to unload acpi modules before hibernate, same result.
please check if the /sys/power/disk is set to "platform" and not "shutdown" before doing suspend.
(In reply to comment #6) > please check if the /sys/power/disk is set to "platform" and not "shutdown" > before doing suspend. /sys/power/disk is set to "shutdown", but since I switched to a suspend2-enabled kernel (http://atrpms.net/dist/fc6/kernel-suspend2/), suspend-to-disk works perfectly, i.e. resuming re-enables fans. I'll try to switch "shutdown" to "platform" and let you know the result.
(In reply to comment #7) > perfectly, i.e. resuming re-enables fans. I'll try to switch "shutdown" to > "platform" and let you know the result. [root@penelope ~]# echo platform > /sys/power/disk [root@penelope ~]# acpitool -f Fan : on Fan : on Fan : off Fan : off hibernate then resume [root@penelope ~]# acpitool -f Fan : off Fan : on Fan : off Fan : off
(In reply to comment #8) same test with 2.6.18-1.2849_1.fc6.cubbi_suspend2 : hibernate then resume : [imil@penelope ~]$ acpitool -f Fan : on Fan : on Fan : off Fan : off
Assuming you're using the hibernate script with Suspend2, it's probably unloading ACPI modules prior to doing the suspend. If you are using it, and want to use swsusp instead, you might try setting the hibernate script's conf files (in /etc/hibernate) to not use Suspend2. Of course, being the Suspend2 author, I won't encourage you to not use Suspend2 :) Nigel
Even with suspend2, acpi stays broken for me. The fans do turn on in the state they were in when suspending, but they don't react to temperature changes and the ACPI power button doesn't work.
Benny, could you please: * check the modules are being unloaded by using the hibernate script's -bug-report option and checking the output * try using 4 as the PowerDownMethod (this will get ACPI methods run that won't run if you use 5 as the PowerDownMethod; is equivalent to setting 'platform' in swsusp) * failing the above, try the steps on http://acpi.sourceforge.net/ for debugging a DSDT? Nigel
Created attachment 142138 [details] Output from hibernate --bug-report
I am not sure whether modules are being unloaded. I have attached a hibernate --bug-report. 4 as the PowerDownMethod seems to just make things worse, fans are now staying off. I will look at acpi.sf.net now.
The log says the fan module isn't mentioned in the list of modules loaded, so there are a few possibilities: * You might have it compiled in, in which case I would suggest building as a module and seeing if it gets unloaded; * You might have it as a module, never being loaded (check lsmod before trying to suspend), in which case I would get it being loaded and reloaded after suspending; * You might have it as a module, being loaded before suspending but not reloaded after resuming. I would seek to get it insmod'd post-resume (OnResume in the hibernate conf files). * You might have an issue with your DSDT, in which case you'll want to look to http://acpi.sourceforge.net for help with diagnosis and fixing. Nigel
I don't build kernels anymore unless there is a particular reason to do. For the original suspend I used kernel-2.6.18-1.2849.fc6, and for suspend2 I used kernel-suspend2-2.6.18-1.2849_1.fc6.cubbi_suspend2 from ATrpms. Right now I am running kernel-suspend2-2.6.18-1.2849_1.fc6.cubbi_suspend2, and I have not suspended since last cold boot. What is the name of the fan module? lsmod|grep fan returned nothing. I have 4 directories in /proc/acpi/fan and acpitool -f works, so I suppose the acpi fan module must be compiled in. I guess I can try building my own kernel with acpi modular, but only if it helps debugging. For production use it's just too much trouble.
Yes, the module is called 'fan'. If you have the kernel config file handy, could you attach it, and we can quickly verify that the fan support is compiled in. I agree that it sounds like it is, but there's nothing like seeing the config to be completely sure. If it is, yes - I'd recommend building with it modular to see if it will address your issue. If it fixes it, it might help make the case for modular becoming the default.
Setting needinfo from reporter and reassigning to me.
Please add cc: for kernel maintainers when reassigning kernel bugs.
I am very happy to report that the problem is gone after upgrading to Fedora 7! The fans are off right after suspend, but unlike earlier kernels, they start when the temperature rises. The ACPI buttons work, including the power button. In fact, the only problem remaining is some incorrect 3D rendering with xorg-x11-drv-ati-6.6.3-2.fc7 after resume. Restarting the X server fixes that. My current package versions are kernel-2.6.21-1.3194.fc7.i686 and pm-utils-0.99.3-6.fc7