This patch set implements full TSC virtualization, with both trapping and passthrough modes, and intelligent mode switching. As a result, TSC will never go backwards, we are stable against guest re-calibration attempts, VM reset, and migration. For guests which require it, the TSC khz can even be preserved on migration to a new host. The TSC will never be trapped on UP systems unless the host TSC actually runs faster than the guest; other conditions, including bad hardware and changing speeds are accomodated by using catchup mode to keep the guest passthrough TSC in line with the host clock. What is still needed on top of this is a way to force TSC trapping, or disable it entirely, for benchmarking purposes. I refrained from adding that last bit because it wasn't clear whether the best thing to do is a global 'force TSC trapping' / 'force TSC passthrough' / 'intelligent choice', or if this control should be on a per-VM level, via an ioctl(), module parameter, or sysfs. John and Thomas I have cc'd on this because it may be relevant to their interests and I always appreciate feedback, especially on a change set as large and complex as this. Enjoy. This time, there are no howler monkeys. I've included all the feedback I got from previous rounds of this and more. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html