Re: [BUG] kacpi_notify goes into an infinite loop (luckly it callscond_resched)
From: Steven Rostedt
Date: Wed Jun 30 2010 - 09:40:19 EST
On Mon, 2010-05-31 at 10:57 +0800, Zhang Rui wrote:
> Hi, Steve,
> On Sat, 2010-05-29 at 09:01 +0800, Steven Rostedt wrote:
> > I just replaced Windows with F12 on my wife's computer, to have nothing
> > but issues. But anyway, one of the issues I had on this box was in
> > vanilla linux kernel 2.6.34 (all the fedora kernels had other issues),
> > the kacpi_notify would go into an infinite loop.
> > I debugged it a bit with ftrace and saw that the kacpi_notify workqueue
> > was constantly requeuing itself (thanks to the workqueue trace events).
> > I bisected this, and it came down to this change:
> > commit fa80945269f312bc609e8384302f58b03c916e12
> > Author: Thomas Renninger <trenn@xxxxxxx>
> > Date: Sat Feb 20 11:44:27 2010 +0100
> > ACPI thermal: Don't invalidate thermal zone if critical trip point is bad
> This patch enables the ACPI thermal control which is used to be disabled
> on some laptops.
> Maybe this triggers an interrupt storm on this box.
> please attach the output of "grep . /sys/firmware/acpi/interrupts/*".
> please attach the acpidump output of your laptop as well.
Sorry for the very late reply, I've been on the Cc of two kacpi_notify
bugs and one was not the problem, and I was deleting both emails as they
came in thinking they were the one I was ignoring. I just noticed that
the bug I had was closed due to my unresponsiveness. Sorry about that,
this was my wife's desktop and once I got it working, it became very low
priority (and I basically forgot about it).
Anyway here's the info on the box if your are still interested:
# grep . /sys/firmware/acpi/interrupts/*
/sys/firmware/acpi/interrupts/ff_gbl_lock: 0 disabled
/sys/firmware/acpi/interrupts/ff_pmtimer: 0 invalid
/sys/firmware/acpi/interrupts/ff_pwr_btn: 0 enabled
/sys/firmware/acpi/interrupts/ff_rt_clk: 0 disabled
/sys/firmware/acpi/interrupts/ff_slp_btn: 0 invalid
/sys/firmware/acpi/interrupts/gpe00: 0 invalid
/sys/firmware/acpi/interrupts/gpe01: 0 invalid
/sys/firmware/acpi/interrupts/gpe02: 0 invalid
/sys/firmware/acpi/interrupts/gpe03: 0 disabled
/sys/firmware/acpi/interrupts/gpe04: 0 disabled
/sys/firmware/acpi/interrupts/gpe05: 0 invalid
/sys/firmware/acpi/interrupts/gpe06: 0 invalid
/sys/firmware/acpi/interrupts/gpe07: 0 invalid
/sys/firmware/acpi/interrupts/gpe08: 0 invalid
/sys/firmware/acpi/interrupts/gpe09: 0 invalid
/sys/firmware/acpi/interrupts/gpe0A: 0 invalid
/sys/firmware/acpi/interrupts/gpe0B: 0 disabled
/sys/firmware/acpi/interrupts/gpe0C: 0 disabled
/sys/firmware/acpi/interrupts/gpe0D: 0 disabled
/sys/firmware/acpi/interrupts/gpe0E: 0 invalid
/sys/firmware/acpi/interrupts/gpe0F: 0 invalid
/sys/firmware/acpi/interrupts/gpe10: 0 invalid
/sys/firmware/acpi/interrupts/gpe11: 0 invalid
/sys/firmware/acpi/interrupts/gpe12: 0 invalid
/sys/firmware/acpi/interrupts/gpe13: 0 invalid
/sys/firmware/acpi/interrupts/gpe14: 0 invalid
/sys/firmware/acpi/interrupts/gpe15: 0 invalid
/sys/firmware/acpi/interrupts/gpe16: 0 invalid
/sys/firmware/acpi/interrupts/gpe17: 0 invalid
/sys/firmware/acpi/interrupts/gpe18: 0 enabled
/sys/firmware/acpi/interrupts/gpe19: 0 invalid
/sys/firmware/acpi/interrupts/gpe1A: 0 invalid
/sys/firmware/acpi/interrupts/gpe1B: 0 invalid
/sys/firmware/acpi/interrupts/gpe1C: 0 invalid
/sys/firmware/acpi/interrupts/gpe1D: 0 invalid
/sys/firmware/acpi/interrupts/gpe1E: 0 invalid
/sys/firmware/acpi/interrupts/gpe1F: 0 invalid
Note, this is a desktop not a laptop.
I don't see a acpidump utility installed, nor do I see anywhere in
fedora 12 that would install it.
After reverting the one patch, everything seemed to work (although it
still crashes here and there, but I think that's a video driver bug).
I'll help investigate this if you want. But it may take time. The box
does belong to my wife and I need to wait for her to finish with it
before I can take a look ;-) Well, I can ssh in, but to try patches or
anything else requiring reboots, will have to wait till she's off of it.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/