Make sure that VM::get_speed() returns the correct value after a migration
For that, I reset the physical fields of the CPU (speed_, pstate_ and
speed_per_pstate_) to the ones of the new physical host during the
migration.
Maybe we should change only the speed_, and prevent the use of pstate
things in VM?
Another approach for this commit could be to make Host::get_speed()
and friend virtual, and to override them in the VM to use the values
of the underlying physical CPU (ie, of get_pm()->pimple_cpu) instead
of the one of the VM's VCPU, but I fear to still use the wrong speed
in some cases, in particular when a new execution in created onto the
VCPU.
This forbids speed_per_pstate_ to be 'const', since we reset it for
VCPUs on VM migration. Another approach could have been to destroy and
re-create the VCPU on migration, but I'd have to update the LMM to
point the Execs to the newly created resource, which seems
troublesome.