This series makes QEMU accept migration if tsc-frequency is
explicitly set on configuration. As management software is
required to keep device configuration the same on migration
source or destination, explicit tsc-frequency will ensure that
either:
* The destination host has a matching TSC frequency; or
* The destination host has TSC scaling available.
Changelog
=========
v2 -> v3:
* Fix build failure ((missing closing braces)
v1 -> v2:
* v1 series subject was:
* [PATCH 0/4] Allow migration with invtsc if there's no
frequency mismatch
* Removed patches 3/4 and 4/4, that allowed migration
if no explicit tsc-frequency was set. Implementing the check on
post_load or post_init is not enough to make migration abort,
so we will need a more complex solution to implement that
feature.
Plans for future work
=====================
1) Querying host TSC frequency/scaling capability
-------------------------------------------------
I plan to include TSC frequency/scaling information on
query-cpu-model-expansion model="host" in a future series. Then
management software will be able to automatically configure TSC
frequency when invtsc is enabled, instead of requiring the user
to configure it explicitly. While we don't implement that, invtsc
migration will be possible only if the user configures TSC
frequency manually.
2) invtsc migration with no explicit TSC frequency
--------------------------------------------------
A future series can implement migration when TSC frequency is not
specified explicitly. It will be a bit more complex because it
requires either letting the destination abort the migration, or
sending TSC frequency/scaling information from destination to
source.
---
Cc: Marcelo Tosatti <mtosatti(a)redhat.com>
Cc: "Daniel P. Berrange" <berrange(a)redhat.com>
Cc: Paolo Bonzini <pbonzini(a)redhat.com>
Cc: kvm(a)vger.kernel.org
Cc: Haozhong Zhang <haozhong.zhang(a)intel.com>
Cc: "Michael S. Tsirkin" <mst(a)redhat.com>
Cc: Igor Mammedov <imammedo(a)redhat.com>
Cc: libvir-list(a)redhat.com
Cc: Jiri Denemark <jdenemar(a)redhat.com>
Eduardo Habkost (2):
kvm: Simplify invtsc check
kvm: Allow invtsc migration if tsc-khz is set explicitly
target/i386/kvm.c | 20 +++++++++++---------
1 file changed, 11 insertions(+), 9 deletions(-)
--
2.11.0.259.g40922b1