runaway intr problems: powerd and/or hw.acpi.cpu.cx_lowest related
Doug Barton
dougb at FreeBSD.org
Mon Aug 23 03:17:47 UTC 2010
Thanks to help from Andriy I've been working on narrowing down the cause
of my "runaway intr" problems and we've found some interesting things.
First, if I use neither powerd nor set hw.acpi.cpu.cx_lowest less than
C1 things seem to work fine. Using one or the other sort of works, but
between the 2 powerd seems to cause the most problems.
However, the more interesting thing is that generally the problem seems
to be caused by contention on IRQ 20 between the following:
20 (ehci0)
20 (uhci0)
20 (hpet0)
If I set the following in loader.conf:
kern.eventtimer.timer1="i8254"
kern.eventtimer.timer2="RTC"
Then everything works (where "everything" is 40 minutes or so of
watching a video that previously caused the runaway problem consistently
in about 10-20 minutes, although in the past it sometimes took hours to
manifest). Or, if I build a kernel with no USB (so IRQ 20 is no longer
shared) then once again, everything works (as above) using:
kern.eventtimer.timer1: LAPIC
kern.eventtimer.timer2: HPET
(I.e., the default)
I also got another interesting set of data today from a "runaway intr"
situation that did not involve swi:4. The symptoms were the same as
previously, but the devices involved were totally different. This may
have to do with the fact that I switched back to ULE for the testing
today, and/or I hadn't set cx_lowest=C3.
http://people.freebsd.org/~dougb/intr-out-3.txt
This was with ULE + USB in the kernel, LAPIC/HPET, cx_lowest=C1, but
running powerd with the following:
powerd_flags="-a adaptive -b adaptive -n adaptive"
... and so it goes,
Doug
--
Improve the effectiveness of your Internet presence with
a domain name makeover! http://SupersetSolutions.com/
Computers are useless. They can only give you answers.
-- Pablo Picasso
More information about the freebsd-current
mailing list