freebsd-dev/sys/sparc64
Thomas Moestl 9078f61c55 Completely disable interrupts (not just raise %pil) when calculating the
value to be written into tick_compare in tick_hardclock(). While
we were taking care that the value to be written was at least TICK_GRACE
ticks in the future, a vector interrupt could happen between calculating
the value and writing it. If it took longer than TICK_GRACE to complete
(which is doubtful for a single device-triggered vector interrupt, but
quite likely for some IPIs), the value written would be in the past
and tick interrupts (which drive hardclock and statclock) would stop
until %tick wraps around, which takes a long time.
Also, increase TICK_GRACE from 1000 to 10000 for good measure.

Reported by:	kris
Reviewed by:	jake
Approved by:	re (scottl)
2003-05-29 17:49:21 +00:00
..
central Use M_WAITOK. 2003-02-19 17:25:58 +00:00
compile Obrien created this directory, but I didn't cvs add cvsignore 2001-07-01 23:37:03 +00:00
conf Remove some debug options that are no longer needed. 2003-04-27 01:52:32 +00:00
ebus Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
fhc Fix definite panic when releasing interrupt resources. 2003-02-19 19:40:40 +00:00
include Bring back bus_dmasync_op_t. It is now a typedef to an int, though the 2003-05-27 04:59:59 +00:00
isa Add two new workaround for firmware anomalies: 2002-11-07 16:07:46 +00:00
pci Bring back bus_dmasync_op_t. It is now a typedef to an int, though the 2003-05-27 04:59:59 +00:00
sbus Bring back bus_dmasync_op_t. It is now a typedef to an int, though the 2003-05-27 04:59:59 +00:00
sparc64 Completely disable interrupts (not just raise %pil) when calculating the 2003-05-29 17:49:21 +00:00