lkml.org 
[lkml]   [2010]   [Sep]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 18/29] KVM: MMU: Propagate the right fault back to the guest after gva_to_gpa
      On 09/10/2010 06:30 PM, Joerg Roedel wrote:
    > This patch implements logic to make sure that either a
    > page-fault/page-fault-vmexit or a nested-page-fault-vmexit
    > is propagated back to the guest.
    >
    > @@ -338,6 +338,22 @@ void kvm_inject_page_fault(struct kvm_vcpu *vcpu)
    > kvm_queue_exception_e(vcpu, PF_VECTOR, error_code);
    > }
    >
    > +void kvm_propagate_fault(struct kvm_vcpu *vcpu)
    > +{
    > + u32 nested, error;
    > +
    > + error = vcpu->arch.fault.error_code;
    > + nested = error& PFERR_NESTED_MASK;
    > + error = error& ~PFERR_NESTED_MASK;
    > +
    > + vcpu->arch.fault.error_code = error;
    > +
    > + if (mmu_is_nested(vcpu)&& !nested)
    > + vcpu->arch.nested_mmu.inject_page_fault(vcpu);
    > + else
    > + vcpu->arch.mmu.inject_page_fault(vcpu);
    > +}
    > +

    Tacking a non-architectural bit on top of the error code is not very
    nice. Can you move it to a separate vcpu->arch.fault.nested?

    --
    error compiling committee.c: too many arguments to function



    \
     
     \ /
      Last update: 2010-09-12 10:53    [W:3.675 / U:0.984 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site