From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Yongjun Subject: [PATCH] KVM: fix to not use NULL kvm->coalesced_mmio_ring in kvm_vcpu_fault() Date: Fri, 12 Mar 2010 11:43:04 +0800 Message-ID: <4B99B848.6000006@cn.fujitsu.com> References: <20100312120523.1b147c58.yoshikawa.takuya@oss.ntt.co.jp> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: avi@redhat.com, mtosatti@redhat.com, kvm@vger.kernel.org To: Takuya Yoshikawa Return-path: Received: from cn.fujitsu.com ([222.73.24.84]:64047 "EHLO song.cn.fujitsu.com" rhost-flags-OK-FAIL-OK-OK) by vger.kernel.org with ESMTP id S1751290Ab0CLDlR (ORCPT ); Thu, 11 Mar 2010 22:41:17 -0500 In-Reply-To: <20100312120523.1b147c58.yoshikawa.takuya@oss.ntt.co.jp> Sender: kvm-owner@vger.kernel.org List-ID: If coalesced_mmio init fail, the kvm->coalesced_mmio_ring will be set to NULL. If so, we should return VM_FAULT_SIGBUS in kvm_vcpu_fault() even if vmf->pgoff == KVM_COALESCED_MMIO_PAGE_OFFSET. Signed-off-by: Wei Yongjun --- virt/kvm/kvm_main.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index e758ef7..0e06a6d 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -1253,7 +1253,8 @@ static int kvm_vcpu_fault(struct vm_area_struct *vma, struct vm_fault *vmf) page = virt_to_page(vcpu->arch.pio_data); #endif #ifdef KVM_COALESCED_MMIO_PAGE_OFFSET - else if (vmf->pgoff == KVM_COALESCED_MMIO_PAGE_OFFSET) + else if (vmf->pgoff == KVM_COALESCED_MMIO_PAGE_OFFSET && + vcpu->kvm->coalesced_mmio_ring) page = virt_to_page(vcpu->kvm->coalesced_mmio_ring); #endif else -- 1.6.3.3