On Thu, 2007-10-25 at 15:16 +0100, Keir Fraser wrote:> On 24/10/07 22:12, "Ben Guthro" <bguthro@virtualiron.com>
wrote:
>
> > Offset emulated local APIC timer so it doesn''t tick during
guest''s
> > timer related processing. Otherwise, guests using the local APIC for
> > process accounting can see long sequences of process ticks incorrectly
> > charged to interrupt processing.
>
> Do they really get in sync like that? Seems a bit odd. Couldn''t
the same
> happen on real hardware? I wonder why it would be more likely in the
> virtualised case...
Seems like it could happen on real hardware as well. My guess was that
real hardware timers would drift relative to each other, and make it
less likely.
The failure was seen on a 2.4 kernel (RHEL3) so the default method for
process accounting there might be poor anyway. There was a program that
failed because it did a large amount of CPU-intensive work but then saw
zero ticks charged to the process.
> Perhaps just offsetting all periodic timers by some random fraction of the
> period would be a simpler patch?
My goal at the time was to move the local APIC timer as far out of sync
as possible, but some random fraction might work as well.
/gary
--
Gary Grebus
Virtual Iron Software, Inc.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel