[vbox-dev] fUpdateStuff flag never set in trunk/src/VBox/VMM/TM.cpp ?

Mark Cranness mark.cranness at gmail.com
Mon Dec 7 12:01:04 GMT 2009

I'm debugging a time sync / TSC problem and noted the following, which
looks like a bug:

TM.cpp > function tmR3TimerQueueRunVirtualSync lines 1953 and 1986
declare and use a variable fUpdateStuff.
It is initialised to false (line 1953) and tested for true (line
1986), BUT NEVER set to true.


Won't this cause the TSC catchup to always fail (because the catch-up
calculation is not written back)?

There may be other functions that do this update instead, but a quick
look indicates that they might not.

AND the behaviour of my VM indicates that the catch-up is not
happening as expected (or I am confused...).

I set:
VBoxManage setextradata Server "VBoxInternal/TM/CatchUpStopThreshold" 30000000
... "VBoxInternal/TM/CatchUpStartThreshold3" 30000000
... "VBoxInternal/TM/CatchUpPrecentage3" 100
So CatchUpStopThreshold is 30ms, and has a catch-up percent of +100%
and yet the catch-up fails with a "Giving up catch-up attempt at ..."
message, with timing that indicates NO catch-up is being applied at


More information about the vbox-dev mailing list