[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: clock jump in 0.2.0.23-rc, too
Scott Bennett wrote:
> It appears that the "clock jump" problem does persist into 0.2.0.23-rc.
> Here are the notice-level log messages since I started up the new version
> this afternoon:
> [remainder eldided]
>
Scott,
If you are using a dual-core or multiprocessor system, it is likely
that you too are experiencing issues with the TSC being out of syc
between the cores. The TSC counters on physical CPUs can get out of sync
just as CPUs on virtual CPUs can. Physical CPUs just experience this
issue so rarely that the most users will never encounter it. The
likelihood that the TSCs between two cores on the same system get out of
sync appears to be system/motherboard/CPU dependent.
See http://kerneltrap.org/node/14003 on the rationale for adding the
"notsc" option to the Linux kernel. Also see
http://lkml.org/lkml/2005/11/4/173 for a detailed explanation by an AMD
engieer of why and under which conditions the TSCs might go out of sync.
At least in the past FreeBSD was also impacted by TSCs getting out of
sync, causing the time to jump as the the process migrates between CPUs.
See
http://unix.derkeiler.com/Mailing-Lists/FreeBSD/current/2004-08/1105.html
There is a very simple way for you to test if the time jumps you have
been seeing are caused by the TSCs between two CPU cores being out of
sync: simply temporarily disable SMP in your kernel. If the problem goes
away, the TSCs likely are out of sync. If so, you may want to find out
of there is a way to disable FreeBSD's use of the TSC similar to the
"notsc" option in Linux and see if that addresses the problem.
--Lucky Green <shamrock@xxxxxxxxxxxxxx>