Alexander Graf wrote:
If VMware ESX finds itself virtualized (read: inside VMware), it
reads the TSC speed from its backdoor, because measuring the TSC
inside a VM is not exact.
This patch implements a hacky way to detect the TSC speed and passes
that through to the VM. I am open to suggestions on how to improve
the behavior. It also adds a magic return value of 2 on the version
return, which is required by VMware ESX. WARNING: This
implementation breaks on non-x86 hosts!
If you run _this_ code as a guest inside itself, shouldn't it _call_
VMPORT_CMD_GETPROCSPEED to get the value? :-)