diff options
author | Tony Luck <aegl@agluck-desktop.(none)> | 2009-03-31 17:25:08 -0400 |
---|---|---|
committer | Tony Luck <tony.luck@intel.com> | 2009-03-31 17:25:08 -0400 |
commit | c66b31f3926165bc1d4128adc97a064dcbab421a (patch) | |
tree | 13be75d33bd2b9d4ec45ec512ac38a2e7069062e /arch/ia64/kvm | |
parent | 50fbe56c127efde659c686495eb1f925fd84ff0a (diff) | |
parent | 7120569c76028a6883697b7643564f0c419cfe07 (diff) |
Pull pvops into release branch
Diffstat (limited to 'arch/ia64/kvm')
-rw-r--r-- | arch/ia64/kvm/kvm-ia64.c | 2 | ||||
-rw-r--r-- | arch/ia64/kvm/vcpu.c | 2 | ||||
-rw-r--r-- | arch/ia64/kvm/vtlb.c | 2 |
3 files changed, 4 insertions, 2 deletions
diff --git a/arch/ia64/kvm/kvm-ia64.c b/arch/ia64/kvm/kvm-ia64.c index 076b00d1dbff..28af6a731bb8 100644 --- a/arch/ia64/kvm/kvm-ia64.c +++ b/arch/ia64/kvm/kvm-ia64.c | |||
@@ -70,7 +70,7 @@ static void kvm_flush_icache(unsigned long start, unsigned long len) | |||
70 | int l; | 70 | int l; |
71 | 71 | ||
72 | for (l = 0; l < (len + 32); l += 32) | 72 | for (l = 0; l < (len + 32); l += 32) |
73 | ia64_fc(start + l); | 73 | ia64_fc((void *)(start + l)); |
74 | 74 | ||
75 | ia64_sync_i(); | 75 | ia64_sync_i(); |
76 | ia64_srlz_i(); | 76 | ia64_srlz_i(); |
diff --git a/arch/ia64/kvm/vcpu.c b/arch/ia64/kvm/vcpu.c index d4d280505878..a18ee17b9192 100644 --- a/arch/ia64/kvm/vcpu.c +++ b/arch/ia64/kvm/vcpu.c | |||
@@ -386,7 +386,7 @@ void set_rse_reg(struct kvm_pt_regs *regs, unsigned long r1, | |||
386 | else | 386 | else |
387 | *rnat_addr = (*rnat_addr) & (~nat_mask); | 387 | *rnat_addr = (*rnat_addr) & (~nat_mask); |
388 | 388 | ||
389 | ia64_setreg(_IA64_REG_AR_BSPSTORE, bspstore); | 389 | ia64_setreg(_IA64_REG_AR_BSPSTORE, (unsigned long)bspstore); |
390 | ia64_setreg(_IA64_REG_AR_RNAT, rnat); | 390 | ia64_setreg(_IA64_REG_AR_RNAT, rnat); |
391 | } | 391 | } |
392 | local_irq_restore(psr); | 392 | local_irq_restore(psr); |
diff --git a/arch/ia64/kvm/vtlb.c b/arch/ia64/kvm/vtlb.c index 38232b37668b..2c2501f13159 100644 --- a/arch/ia64/kvm/vtlb.c +++ b/arch/ia64/kvm/vtlb.c | |||
@@ -210,6 +210,7 @@ void thash_vhpt_insert(struct kvm_vcpu *v, u64 pte, u64 itir, u64 va, int type) | |||
210 | phy_pte &= ~PAGE_FLAGS_RV_MASK; | 210 | phy_pte &= ~PAGE_FLAGS_RV_MASK; |
211 | psr = ia64_clear_ic(); | 211 | psr = ia64_clear_ic(); |
212 | ia64_itc(type, va, phy_pte, itir_ps(itir)); | 212 | ia64_itc(type, va, phy_pte, itir_ps(itir)); |
213 | paravirt_dv_serialize_data(); | ||
213 | ia64_set_psr(psr); | 214 | ia64_set_psr(psr); |
214 | } | 215 | } |
215 | 216 | ||
@@ -456,6 +457,7 @@ void thash_purge_and_insert(struct kvm_vcpu *v, u64 pte, u64 itir, | |||
456 | phy_pte &= ~PAGE_FLAGS_RV_MASK; | 457 | phy_pte &= ~PAGE_FLAGS_RV_MASK; |
457 | psr = ia64_clear_ic(); | 458 | psr = ia64_clear_ic(); |
458 | ia64_itc(type, ifa, phy_pte, ps); | 459 | ia64_itc(type, ifa, phy_pte, ps); |
460 | paravirt_dv_serialize_data(); | ||
459 | ia64_set_psr(psr); | 461 | ia64_set_psr(psr); |
460 | } | 462 | } |
461 | if (!(pte&VTLB_PTE_IO)) | 463 | if (!(pte&VTLB_PTE_IO)) |