cvs commit: src/sys/i386/i386 mp_machdep.c src/sys/i386/isa clock.c src/sys/kern kern_ktr.c src/sys/sys ktr.h

Sascha Wildner saw at online.de
Fri Dec 9 14:33:24 PST 2005


Matthew Dillon wrote:
dillon      2005/12/06 15:37:55 PST

DragonFly src repository

  Modified files:
    sys/i386/i386        mp_machdep.c 
    sys/i386/isa         clock.c 
    sys/kern             kern_ktr.c 
    sys/sys              ktr.h 
  Log:
  Synchronize the TSC between all cpus on startup and provide a sysctl,
  debug.ktr.resynchronize, which will (very expensively) resynchronize the
  TSCs 10 times a second to reduce drift errors to manageable numbers.
  
  The TSC on all the cpus for the purposes of ktrdump's ought to be
  synchronizated within ~200ns of each other, assuming all cpus are running
  at the same frequency.
  
  This needs more work.  What we really need to do is calculate the drift
  for each cpu and apply it dynamically.
  
  Revision  Changes    Path
  1.49      +17 -1     src/sys/i386/i386/mp_machdep.c
  1.44      +11 -5     src/sys/i386/isa/clock.c
  1.7       +98 -2     src/sys/kern/kern_ktr.c
  1.8       +1 -1      src/sys/sys/ktr.h
This breaks UP buildkernel here since the extern declaration of 
tsc_offsets is inside #ifdef SMP but referenced outside.

I was about to back out the change in ktr_write_entry() but in the end I 
wasn't sure enough.

Sascha





More information about the Commits mailing list