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)
committerChristoffer Dall <christoffer.dall@linaro.org>
Wed, 8 Oct 2014 09:11:28 +0000 (11:11 +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>
(cherry picked from commit 27fbe64bfa63cfb9da025975b59d96568caa2d53)
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
virt/kvm/kvm_main.c

index b64d44219f27b8945ddd49a917805dec329f6372..9cae94206f413c2264c37dbb52a9a67a1e34fb04 100644 (file)
@@ -1728,7 +1728,7 @@ bool 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;