KVM: correct null pid check in kvm_vcpu_yield_to()
authorSam Bobroff <sam.bobroff@au1.ibm.com>
Thu, 18 Sep 2014 23:40:41 +0000 (09:40 +1000)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 22 Sep 2014 11:21:29 +0000 (13:21 +0200)
Correct a simple mistake of checking the wrong variable
before a dereference, resulting in the dereference not being
properly protected by rcu_dereference().

Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
virt/kvm/kvm_main.c

index 96ec6226e4ab61fd62ef418a0a92011c57129a59..95519bc959edcaaefe27d1fd9e1d7a51aa52b6e2 100644 (file)
@@ -1725,7 +1725,7 @@ int kvm_vcpu_yield_to(struct kvm_vcpu *target)
        rcu_read_lock();
        pid = rcu_dereference(target->pid);
        if (pid)
-               task = get_pid_task(target->pid, PIDTYPE_PID);
+               task = get_pid_task(pid, PIDTYPE_PID);
        rcu_read_unlock();
        if (!task)
                return ret;