| From bbdaa2814f24bc488b64e416f41886b7afbeec98 Mon Sep 17 00:00:00 2001 |
| From: James Hogan <james.hogan@imgtec.com> |
| Date: Tue, 3 Jan 2017 17:43:01 +0000 |
| Subject: [PATCH] KVM: MIPS: Flush KVM entry code from icache globally |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| commit 32eb12a6c11034867401d56b012e3c15d5f8141e upstream. |
| |
| Flush the KVM entry code from the icache on all CPUs, not just the one |
| that built the entry code. |
| |
| Signed-off-by: James Hogan <james.hogan@imgtec.com> |
| Cc: Paolo Bonzini <pbonzini@redhat.com> |
| Cc: "Radim Krčmář" <rkrcmar@redhat.com> |
| Cc: Ralf Baechle <ralf@linux-mips.org> |
| Cc: linux-mips@linux-mips.org |
| Cc: kvm@vger.kernel.org |
| Cc: <stable@vger.kernel.org> # 3.16.x- |
| Signed-off-by: Radim Krčmář <rkrcmar@redhat.com> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/arch/mips/kvm/mips.c b/arch/mips/kvm/mips.c |
| index a6ea084b4d9d..5d14ce519a82 100644 |
| --- a/arch/mips/kvm/mips.c |
| +++ b/arch/mips/kvm/mips.c |
| @@ -349,8 +349,8 @@ struct kvm_vcpu *kvm_arch_vcpu_create(struct kvm *kvm, unsigned int id) |
| dump_handler("kvm_exit", gebase + 0x2000, vcpu->arch.vcpu_run); |
| |
| /* Invalidate the icache for these ranges */ |
| - local_flush_icache_range((unsigned long)gebase, |
| - (unsigned long)gebase + ALIGN(size, PAGE_SIZE)); |
| + flush_icache_range((unsigned long)gebase, |
| + (unsigned long)gebase + ALIGN(size, PAGE_SIZE)); |
| |
| /* |
| * Allocate comm page for guest kernel, a TLB will be reserved for |
| -- |
| 2.10.1 |
| |