diff options
author | Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> | 2010-07-03 16:02:42 +0800 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2010-08-02 06:40:16 +0300 |
commit | dd180b3e90253cb4ca95d603a8c17413f8daec69 (patch) | |
tree | 9c0cc39f4088a9b54a96ab6545739e423deb3d2e /arch/x86/include/asm/kvm_host.h | |
parent | 5689cc53fa9d09b5bf41b1b1a7c90bd6c112ab40 (diff) | |
download | blackbird-op-linux-dd180b3e90253cb4ca95d603a8c17413f8daec69.tar.gz blackbird-op-linux-dd180b3e90253cb4ca95d603a8c17413f8daec69.zip |
KVM: VMX: fix tlb flush with invalid root
Commit 341d9b535b6c simplify reload logic while entry guest mode, it
can avoid unnecessary sync-root if KVM_REQ_MMU_RELOAD and
KVM_REQ_MMU_SYNC both set.
But, it cause a issue that when we handle 'KVM_REQ_TLB_FLUSH', the
root is invalid, it is triggered during my test:
Kernel BUG at ffffffffa00212b8 [verbose debug info unavailable]
......
Fixed by directly return if the root is not ready.
Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'arch/x86/include/asm/kvm_host.h')
-rw-r--r-- | arch/x86/include/asm/kvm_host.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index 50c79b9f5c38..502e53f999cf 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -40,6 +40,8 @@ 0xFFFFFF0000000000ULL) #define INVALID_PAGE (~(hpa_t)0) +#define VALID_PAGE(x) ((x) != INVALID_PAGE) + #define UNMAPPED_GVA (~(gpa_t)0) /* KVM Hugepage definitions for x86 */ |