This set of patches builds the infrastructure to do both passthrough and intercept based virtualization of TSC in KVM.
Unfortunately, I got caught up on the mechanics of the locking for quite some time to this work is a bit delayed, and the tail end of the patches is in a bit of a messy state, where Intel support needs to be re-integrated (I have patches for this which are now dated and probably don't apply). Nevertheless, I thought considering Joerg and others are working on this as well it would be a good time to get feedback on both the technical details and the overall direction. The overall goal is to have a stable platform TSC and a mixed set of virtualization approaches that can be tailored for the need of the particular operating system running, which runs on systems regardless of hardware TSC frequency changes, CPU hotplug, or destabilization events, and which allows virtualization of multiple different TSC speeds. I realize this is ambitious, but it is achievable, and I believe these patches provide a solid foundation. The direct result will be highly efficient support for 'modern' OSes (which have paravirt clocks or enlightenments) and much more correctable support for legacy OSes (which rely on counting TSC and timer tick). I have liberally sprinkled comments in the patches and patch descriptions to hopefully clarify some of the less intuitive parts. I realize there are some no-nos in here like changing the meaning of the IOCTLs in the middle of a patch set and being a bit behind the current head. This is simply because this patch set is consider a work in progress, especially towards the tail end where we will need integration with qemu. I appreciate any feedback you can give. Thanks, Zach -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html