Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Nov 2004 22:59:58 +0300
From:      Dmitry Kondratyev <null@bikeman.ru>
To:        freebsd-acpi@freebsd.org
Subject:   Re: Troubles with ACPI on HP nx5000 laptop
Message-ID:  <4192733E.3000606@bikeman.ru>
In-Reply-To: <418FAA88.3070706@root.org>
References:  <128676437.20041011133831@bikeman.ru> <401094078.20041011134529@bikeman.ru> <66751906.20041107194159@bikeman.ru> <418FAA88.3070706@root.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hello Nate,

Monday, November 8, 2004, 8:19:04 PM, you wrote:


 >>>> DK>>       After  enabling ACPI on HP nx5000 my laptop (Pentium 
Mobile 1.7M
 >>>> DK>>       Dothan) hangs when compiling programs. dmesg, sysctl 
hw.acpi and
 >>>> DK>>       acpidump -t -d output are in attach. Disabling ACPI helps.
 >>>>
 >>>> DK> oops, attach was filtered somewhere. You can get it here:
 >>>> DK> http://bikeman.ru/HPnx5000.tgz
 >>>>
 >>>> The problem is in acpi thermal module. I set hw.acpi.verbose to 1 in
 >>>> /boot/loader.conf and noted that my laptop hangs when it changes
 >>>> cooling level too often. If i set hw.acpi.thermal.tz0.active to 0 for
 >>>> active cooling or disable thermal module via loader.conf.
 >>>>
 >>>> Btw, when I pull out power cord, my laptop also hang after trying to
 >>>> change power profile.
 >>>>
 >>>> In both cases it doesn't really hangs, it still react to alt-fn, enter
 >>>> and power button. After pressing power I get "acpi: suspend request
 >>>> ignored (not ready yet)".


NL> Thanks for the update.  I need some more information to narrow down the
NL> problem.  Does it hang the very first time it switches cooling levels or
NL> after multiple switches?

     I tested it all again just a few minutes ago, it hung after first
     try to switch.

NL> NL> After it has hung, please break to DDB
NL> (ctrl-alt-backspace) and do a ps.  Go through doing a "tr" on each
NL> process id that looks interesting, looking for stacks that have
NL> "acpi_tz" functions in them.  Email me the process stack info.  It's
NL> obvious that you're getting a deadlock in the acpi thermal zone
NL> switching code but we need to figure out how.

     I don't think it's deadlock, because I found only one process
     callling acpi_tz funcs.

     > ps
     45 c15b8c5c d4de5000   0     0       0       0000204  [RUNQ]
     acpi_thermal
     > trace 45
     sched_switch(c155f640,0,1,5e21f7f1,5e141b1) at sched_switch+0x160
     mi_switch(1,0,d3becca8,10) at mi_switch+0x1d9
     sleepq_switch(c07a4694,c155f640,d3becce0,c04e1dcc,c07a4694) at
     sleepq_switch+0x167
     sleepq_timedwait(c07a4694,54,c07a46a0,c07a0150,0) at
     sleepq_timedwait+0x12
     msleep(c07a4694,c07a46a0,254,c07a0150,3e8) at msleep+0x3bc
     acpi_tz_thread(0,d3becd48,68bf09fc,85e800c6, 2c483cd) at
     acpi_tz_thread+0x1da
     fork_exit(c07902f0,0,d3becd48) at fork_exit+0x80
     fork_trampoline() at fork_trampoline+0x8
     --- trap 0x1, eip = 0, esp = 0xd3becd7c, ebp = 0 ---

     Furthermore,  after  "cont"  in  ddb,  everything worked for a few
     seconds. And it always works for a while till hangs again if after
     hanging  I  call  ddb and type "cont". Maybe it will "unhang" if I
     wait till CPU gets cold.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4192733E.3000606>