diff options
author | Max Bruning <max@joyent.com> | 2011-08-01 07:28:04 -0700 |
---|---|---|
committer | Max Bruning <max@joyent.com> | 2011-08-01 07:29:42 -0700 |
commit | 8d3d4a53bb8de182a3686485ee6a0f6acaa8c3e4 (patch) | |
tree | 1b27676be896bb1cd8be66fac84f4c8c840815ff /kvm_mmu.c | |
parent | d158c438dca2eb7ee01426c87daa76fc4ea2a335 (diff) | |
download | illumos-kvm-8d3d4a53bb8de182a3686485ee6a0f6acaa8c3e4.tar.gz |
HVM-538 Implement smp_rmb/smp_wmb in kvm
Diffstat (limited to 'kvm_mmu.c')
-rw-r--r-- | kvm_mmu.c | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -1844,10 +1844,10 @@ nonpaging_map(struct kvm_vcpu *vcpu, gva_t v, int write, gfn_t gfn) #ifdef XXX mmu_seq = vcpu->kvm->mmu_notifier_seq; - smp_rmb(); #else XXX_KVM_PROBE; #endif + smp_rmb(); pfn = gfn_to_pfn(vcpu->kvm, gfn); /* mmio */ @@ -2069,11 +2069,10 @@ tdp_page_fault(struct kvm_vcpu *vcpu, gva_t gpa, uint32_t error_code) #ifdef XXX mmu_seq = vcpu->kvm->mmu_notifier_seq; - smp_rmb(); #else XXX_KVM_PROBE; #endif - + smp_rmb(); pfn = gfn_to_pfn(vcpu->kvm, gfn); if (is_error_pfn(pfn)) { kvm_release_pfn_clean(pfn); @@ -2508,10 +2507,10 @@ mmu_guess_page_from_pte_write(struct kvm_vcpu *vcpu, gpa_t gpa, #ifdef XXX vcpu->arch.update_pte.mmu_seq = vcpu->kvm->mmu_notifier_seq; - smp_rmb(); #else XXX_KVM_PROBE; #endif + smp_rmb(); pfn = gfn_to_pfn(vcpu->kvm, gfn); if (is_error_pfn(pfn)) { |