Re: [PATCH v6 1/2] KVM: VMX: Execute WBINVD to keep data consistency with assigned devices

Marcelo Tosatti
2010-06-30T17:03:12Z

On Wed, Jun 30, 2010 at 12:25:15PM +0800, Sheng Yang wrote:
> Some guest device driver may leverage the "Non-Snoop" I/O, and explicitly
> WBINVD or CLFLUSH to a RAM space. Since migration may occur before WBINVD or
> CLFLUSH, we need to maintain data consistency either by:
> 1: flushing cache (wbinvd) when the guest is scheduled out if there is no
> wbinvd exit, or
> 2: execute wbinvd on all dirty physical CPUs when guest wbinvd exits.
>
> Signed-off-by: Yaozu (Eddie) Dong <eddie.dong@intel.com>
> Signed-off-by: Sheng Yang <sheng@linux.intel.com>
> ---
> arch/x86/include/asm/kvm_host.h | 6 +++++
> arch/x86/kvm/emulate.c | 5 +++-
> arch/x86/kvm/svm.c | 7 ++++++
> arch/x86/kvm/vmx.c | 10 ++++++++-
> arch/x86/kvm/x86.c | 41 +++++++++++++++++++++++++++++++++++++++
> 5 files changed, 67 insertions(+), 2 deletions(-)

Applied, thanks.
.