lkml.org 
[lkml]   [2008]   [Jul]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 03/19] KVM: move slots_lock acquision down to vapic_exit
    Date
    From: Marcelo Tosatti <mtosatti@redhat.com>

    There is no need to grab slots_lock if the vapic_page will not
    be touched.

    Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: Avi Kivity <avi@qumranet.com>
    ---
    arch/x86/kvm/x86.c | 4 ++--
    1 files changed, 2 insertions(+), 2 deletions(-)

    diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
    index 0fbc032..ef53d88 100644
    --- a/arch/x86/kvm/x86.c
    +++ b/arch/x86/kvm/x86.c
    @@ -2787,8 +2787,10 @@ static void vapic_exit(struct kvm_vcpu *vcpu)
    if (!apic || !apic->vapic_addr)
    return;

    + down_read(&vcpu->kvm->slots_lock);
    kvm_release_page_dirty(apic->vapic_page);
    mark_page_dirty(vcpu->kvm, apic->vapic_addr >> PAGE_SHIFT);
    + up_read(&vcpu->kvm->slots_lock);
    }

    static int __vcpu_run(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run)
    @@ -2944,9 +2946,7 @@ out:

    post_kvm_run_save(vcpu, kvm_run);

    - down_read(&vcpu->kvm->slots_lock);
    vapic_exit(vcpu);
    - up_read(&vcpu->kvm->slots_lock);

    return r;
    }
    --
    1.5.6.1


    \
     
     \ /
      Last update: 2008-07-15 14:17    [W:0.018 / U:2.644 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site