Bug 13417

Summary: Suspend, hibernate and Resume not work on Asus F5v
Product: ACPI Reporter: Tom D. (r0ocik)
Component: Power-Sleep-WakeAssignee: Zhang Rui (rui.zhang)
Status: CLOSED UNREPRODUCIBLE    
Severity: normal CC: acpi-bugzilla, lenb, m.skrzypkowski, r0ocik, rui.zhang, yakui.zhao
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.28-12-generic Subsystem:
Regression: No Bisected commit-id:
Attachments: lspci -vnn
kern.log after resume
dmesg before
dmesg after
pm_test file
dmesg test 2
ACPIDUMP
patch: show more debug info
new dmesg after resume
customized DSDT: more debug info
After apply dsdt and test
customized DSDT

Description Tom D. 2009-05-31 16:10:40 UTC
Created attachment 21666 [details]
lspci -vnn

Distribution: Ubuntu 9.04
Hardware Environment: Asus F5V
Software Environment: 
Problem Description: Suspend/Resume and hibernate not working properly. When wake up there is 100% proc usage. First Suspend is good (nb is sleep and led is blinking) but problem is when wake up. Sometime I can`t even wake up (blank screen and no action on hdd). When after wake I sleep nb again, I can`t do it (blanks screen and after 10 sec I have login screen).
Comment 1 Tom D. 2009-05-31 16:12:52 UTC
Created attachment 21667 [details]
kern.log after resume
Comment 2 ykzhao 2009-06-01 01:21:00 UTC
Will you please do the following test?
   a. kill the process which is using /proc/acpi/event (use the command of "lsof /proc/acpi/event" to get the process ID)
   b. dmesg >dmesg_before; echo mem > /sys/power/state; dmesg >dmesg_after;
   c. press the power button and see whether the box can be resumed
   d. please reboot the system and see whether there exists the file of dmesg_after. If it exists, please attach it.

Please also enable "CONFIG_PM_DEBUG" in kernel configuration and do the following test on your box.
    a. echo [core, processors, platform, devices] > /sys/power/pm_test
    b. do the suspend/resume several times and see whether the box can be resumed. (It is unnecessary to press the power button).
    
   Thanks.
Comment 3 Zhang Rui 2009-06-01 01:30:35 UTC
May 31 17:42:39 nn-laptop kernel: [  167.064082] ACPI Exception (exoparg2-0444): AE_AML_PACKAGE_LIMIT, Index (0FFFFFFFF) is beyond end of object [20080926]
May 31 17:42:39 nn-laptop kernel: [  167.064091] ACPI Error (psparse-0524): Method parse/execution failed [\_SB_.PCI0.IDEC.IDE0._STM] (Node f6c138a0), AE_AML_PACKAGE_LIMIT

please attach the acpidump output.
Comment 4 Tom D. 2009-06-01 15:24:37 UTC
(In reply to comment #2)
> Will you please do the following test?
>    a. kill the process which is using /proc/acpi/event (use the command of
> "lsof /proc/acpi/event" to get the process ID)

lsof /proc/acpi/event:
lsof: WARNING: can't stat() fuse.gvfs-fuse-daemon file system /home/nn/.gvfs
      Output information may be incomplete.
COMMAND  PID USER   FD   TYPE DEVICE SIZE       NODE NAME
acpid   2276 root    3r   REG    0,3    0 4026531942 /proc/acpi/event

Next thing:
killall acpid

But not changed thing:
top - 16:06:43 up 9 min,  2 users,  load average: 5.55, 11.47, 5.80
Tasks: 142 total,   3 running, 139 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.5%us,  0.7%sy,  0.0%ni, 48.6%id,  0.0%wa,  0.3%hi, 49.9%si,  0.0%st
Mem:   1544028k total,   450064k used,  1093964k free,    18660k buffers
Swap:  3068372k total,        0k used,  3068372k free,   181292k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 4262 root      15  -5     0    0    0 R  100  0.0   3:06.57 ksoftirqd/1
 4557 nn        20   0 30400  13m 9700 R    1  0.9   0:00.68 gnome-terminal
 3068 root      20   0  386m  46m  20m S    0  3.1   0:07.73 Xorg
 3708 nn        20   0 26120  12m 9288 S    0  0.8   0:00.94 netspeed_applet
 3717 nn        20   0 26492  13m  10m S    0  0.9   0:00.68 sensors-applet
 3753 nn        20   0 17736 6780 4992 S    0  0.4   0:00.84 gnome-screensav
 4554 nn        20   0 36304  17m  11m S    0  1.1   0:00.78 gedit
    1 root      20   0  3084 1884  564 S    0  0.1   0:01.33 init       
    2 root      15  -5     0    0    0 S    0  0.0   0:00.00 kthreadd
    3 root      RT  -5     0    0    0 S    0  0.0   0:00.00 migration/0
    4 root      15  -5     0    0    0 S    0  0.0   0:00.04 ksoftirqd/0
    5 root      RT  -5     0    0    0 S    0  0.0   0:00.00 watchdog/0 
    9 root      15  -5     0    0    0 S    0  0.0   0:00.12 events/0
   11 root      15  -5     0    0    0 S    0  0.0   0:00.00 khelper
   12 root      RT  -5     0    0    0 S    0  0.0   0:00.00 kstop/0
   14 root      15  -5     0    0    0 S    0  0.0   0:00.00 kintegrityd/0
   16 root      15  -5     0    0    0 S    0  0.0   0:00.00 kblockd/0
   18 root      15  -5     0    0    0 S    0  0.0   0:00.00 kacpid

>    b. dmesg >dmesg_before; echo mem > /sys/power/state; dmesg >dmesg_after;

Files attached.

>    c. press the power button and see whether the box can be resumed

Box filed to resume...

>    d. please reboot the system and see whether there exists the file of
> dmesg_after. If it exists, please attach it.

Files were cut in half way.
in the system log i found all info.

> 
> Please also enable "CONFIG_PM_DEBUG" in kernel configuration and do the
> following test on your box.

Enabled by default.

>     a. echo [core, processors, platform, devices] > /sys/power/pm_test

$ echo [core, processors, platform, devices] > /sys/power/pm_test
-bash: echo: bład zapisu: Invalid argument
bład zapisu[PL] -> read error[EN].

>     b. do the suspend/resume several times and see whether the box can be
> resumed. (It is unnecessary to press the power button).

In Attached files there is pm_test file from my box. I can`t make this option force to work. Any advice ?
After couple suspends I stopped. Box is not in suspend mode, after 10 sec it switch to login screen. Last of the test is hibernate. Naturally hibernate not work too.
> 
>    Thanks.

Thanks for fast replay !
Regards Tom D.
Comment 5 Tom D. 2009-06-01 15:26:57 UTC
Created attachment 21685 [details]
dmesg before
Comment 6 Tom D. 2009-06-01 15:27:52 UTC
Created attachment 21686 [details]
dmesg after
Comment 7 Tom D. 2009-06-01 15:29:15 UTC
Created attachment 21687 [details]
pm_test file
Comment 8 Tom D. 2009-06-01 15:30:15 UTC
Created attachment 21688 [details]
dmesg test 2
Comment 9 Tom D. 2009-06-01 15:30:49 UTC
Created attachment 21689 [details]
ACPIDUMP
Comment 10 Zhang Rui 2009-06-02 05:50:33 UTC
Created attachment 21701 [details]
patch: show more debug info

please apply this patch and redo the test, and attach the dmesg output after resume.
Comment 11 Tom D. 2009-06-02 16:36:24 UTC
(In reply to comment #10)
> Created an attachment (id=21701) [details]
> patch: show more debug info
> 
> please apply this patch and redo the test, and attach the dmesg output after
> resume.

# patch -b < patch.diff
can't find file to patch at input line 5
Perhaps you should have used the -p or --strip option?
The text leading up to this was:
--------------------------
|diff --git a/drivers/acpi/acpica/exoparg2.c b/drivers/acpi/acpica/exoparg2.c
|index 85d95c9..459f0c0 100644
|--- a/drivers/acpi/acpica/exoparg2.c
|+++ b/drivers/acpi/acpica/exoparg2.c
--------------------------

I don`t know if I doing something wrong, but I can`t make this work. Little help or something ?

Regards Tom D.
Comment 12 Zhang Rui 2009-06-03 01:28:41 UTC
hah, it's a quite simple patch,

 			if (index >= operand[0]->package.count) {
+				printk("Rui: package %d\n", operand[0]->package.node->name.integer);
 				status = AE_AML_PACKAGE_LIMIT;
 			}
 

you just need to add the printk line to drivers/acpi/acpica/exoparg2.c line 444.
Comment 13 Zhang Rui 2009-06-03 01:29:55 UTC
BTW: you need to apply this patch against a 2.6.30-rcX kernel
Comment 14 Tom D. 2009-06-03 09:10:07 UTC
So it`s not that simple :) I googled net for info and find solution. in #11 there is answer for that. Ok I`ll be testing today on 2.6.30-rc8 kernel. Latest on kernel.org
Thanks for understanding.

Regards Tom D.
Comment 15 Tom D. 2009-06-05 16:24:15 UTC
Hello,
I'm writing from 2.6.30-rc8 kernel ubuntu. I rerun the test and result is quite the same as form beginning.

Attached the after resume dmesg.
Comment 16 Tom D. 2009-06-05 16:26:05 UTC
Created attachment 21767 [details]
new dmesg after resume
Comment 17 Zhang Rui 2009-06-08 02:37:30 UTC
Created attachment 21802 [details]
customized DSDT: more debug info
Comment 18 Zhang Rui 2009-06-08 02:43:27 UTC
please apply this custom DSDT and redo the test.
Comment 19 Tom D. 2009-06-08 23:11:24 UTC
Created attachment 21819 [details]
After apply dsdt and test

Kernel recompiled with custom dsdt. Dmesg info only with end of file. Nothing else suspicious found in dmesg. Were are lines that are rare:
[  170.684567] Rui: package 1412779849
[  170.684574] ACPI Exception (exoparg2-0446): AE_AML_PACKAGE_LIMIT, Index (0FFFFFFFF) is beyond end of object [20090320]
[  170.684597] ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.PCI0.IDEC.IDE0._STM] (Node f700f8a0), AE_AML_PACKAGE_LIMIT
[  170.684708] ata3: ACPI set timing mode failed (status=0x300b)

Regards Tom D.
Comment 20 Zhang Rui 2009-06-09 00:57:01 UTC
oh, please set CONFIG_ACPI_DEBUG, rebuild and reboot with "acpi.debug_layer=0xffffffff, acpi.debug_level=0x0f"
Comment 21 Zhang Rui 2009-06-17 03:13:12 UTC
ping Tom...
Comment 22 Zhang Rui 2009-07-06 03:36:49 UTC
Created attachment 22224 [details]
customized DSDT

please apply this customized DSDT and attach the output of "grep . /proc/acpi/thermal_zone/*/*"
Comment 23 Zhang Rui 2009-07-06 03:39:41 UTC
please ignore the comment #22.

close this bug as there is not response from the bug reporter.
please re-open it if you can provide the info requested in comment #20.
Comment 24 Tom D. 2010-03-11 13:19:31 UTC
After couple months that strange bug is gone and my machine sleep well :) Thx.
Comment 25 Maciej 2010-07-12 17:58:44 UTC
I have the same notebook (asus F5V), my system is: Fedora 13 with kernel 2.6.33.6-147. The bug is still present. What os do you have? Have you done sth to stop this bug?
Comment 26 Len Brown 2010-09-28 22:04:57 UTC
no response to comment #20

closed.