Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 24 Dec 2010 16:49:50 +0200
From:      Alexander Motin <mav@FreeBSD.org>
To:        Stefan Farfeleder <stefanf@FreeBSD.org>
Cc:        freebsd-current@freebsd.org
Subject:   Re: eventtimers hiccups
Message-ID:  <4D14B30E.3090609@FreeBSD.org>
In-Reply-To: <20101224143124.GC2642@mole.fafoe.narf.at>
References:  <20101224143124.GC2642@mole.fafoe.narf.at>

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

Stefan Farfeleder wrote:
> since the new eventtimers code was committed, my notebook (Dell
> Precision m4400) sometimes hangs for 10-30 seconds, mostly during load.
> In these periods I can move the mouse pointer but time (as perceived by
> time(1)) seems to be halted. This is accompanied by lots of calcru:
> runtime went backwards message, though sometimes they only show up when
> shutting down.
> 
> I now set kern.eventtimer.periodic=1 and have not experienced such
> freezes since then. But it would be nice if the default settigs would
> work. Is there something I could do to help fixing this?
> BTW, I'm not using powerd.

Have you tried to look on what happens with your HPET interrupts during
the problem? Is it timer hardware/driver problem, or something else?

Have you tried to use LAPIC timer? - it has no race window between start
and completion that may potentially stop HPET timer in some situations.

Have you tried to enable kern.eventtimer.idletick?

The best diagnostic would be to get KTR dump at the moment when problem
begins. You should build kernel with
options         KTR

options         ALQ

options         KTR_ALQ

options         KTR_COMPILE=(KTR_SPARE2)

options         KTR_ENTRIES=131072

options         KTR_MASK=(KTR_SPARE2)

and as soon as problem begins (before logs wrapped) you should run
`ktrdump -c -o dump`.

Also you may try in file acpi_hpet.c change line
	if (fdiv < 5000) {
to the
	if (fdiv < 50000) {
.

-- 
Alexander Motin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4D14B30E.3090609>