From: Avi Kivity on 18 Jul 2010 10:10 On 07/16/2010 05:12 AM, Lai Jiangshan wrote: > handle_ept_violation() does not pass error code to > the handler tdp_page_fault(). > > It means tdp_page_fault() handles the page fault with ignoring > the error code, It will not handle the page fault completely correctly, > and may causes endless page fault. > > Please describe the fail scenario more accurately in the change log? Can it happen now, or only with the next patches in the series? > @@ -3521,7 +3521,8 @@ static int handle_ept_violation(struct kvm_vcpu *vcpu) > > gpa = vmcs_read64(GUEST_PHYSICAL_ADDRESS); > trace_kvm_page_fault(gpa, exit_qualification); > - return kvm_mmu_page_fault(vcpu, gpa& PAGE_MASK, 0); > + return kvm_mmu_page_fault(vcpu, gpa& PAGE_MASK, > + exit_qualification& 0x2); > } > > Symbolic constant please. I don't really like how kvm_mmu_page_fault() is overloaded, for !tdp the parameter is a gva, for tdp it is a gpa. We need to break it into two (but later). -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|
Pages: 1 Prev: Write Me Next: kvm, faster and simpler version of get_user_page_and_protection() |