git: clock/tsc: Run TSC MP synchronization test on APs too.
Sepherosa Ziehau
sephe at crater.dragonflybsd.org
Mon Jun 1 02:29:55 PDT 2015
commit 00ec69c72918b119397bee1830133ef9185120be
Author: Sepherosa Ziehau <sephe at dragonflybsd.org>
Date: Sat May 30 16:47:56 2015 +0800
clock/tsc: Run TSC MP synchronization test on APs too.
TSC MP synchronization needs BIOS and hardware coordination. It is
known that buggy BIOS could make TSC not MP synchronized if the system
has multiple CPU packages. Testing TSC MP synchronization only on BSP
is not enough to discover certain types of TSC MP unsynchronization,
e.g. APs TSC is ahead of BSP's TSC by great amount. Thus APs also need
to run TSC MP synchronization test to make sure that TSC is really MP
synchronized. And we are now running at least 50000 TSC MP
synchronization tests on each CPU.
And use lfence to prevent rdtsc from reordering during TSC MP
synchronization test, since we only test TSC MP synchronization on
Intel CPUs currently (mfence will be needed for AMD CPUs).
Summary of changes:
sys/platform/pc64/isa/clock.c | 155 +++++++++++++++++++++++++++++++-----------
1 file changed, 115 insertions(+), 40 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/00ec69c72918b119397bee1830133ef9185120be
--
DragonFly BSD source repository
More information about the Commits
mailing list