From: Sam Bobroff Date: Thu, 18 Sep 2014 23:40:41 +0000 (+1000) Subject: KVM: correct null pid check in kvm_vcpu_yield_to() X-Git-Tag: firefly_0821_release~3680^2~36^2~16^2^2 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=b8a669d29702a8fb529f4fae450a86b8676b0e42;p=firefly-linux-kernel-4.4.55.git KVM: correct null pid check in kvm_vcpu_yield_to() 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 Signed-off-by: Paolo Bonzini (cherry picked from commit 27fbe64bfa63cfb9da025975b59d96568caa2d53) Signed-off-by: Christoffer Dall --- diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index b64d44219f27..9cae94206f41 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -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;