From patchwork Tue Feb 21 04:30:11 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Benjamin Collins X-Patchwork-Id: 142239 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id B3D26B6FA1 for ; Tue, 21 Feb 2012 15:30:19 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752630Ab2BUEaR (ORCPT ); Mon, 20 Feb 2012 23:30:17 -0500 Received: from mail-pw0-f46.google.com ([209.85.160.46]:58045 "EHLO mail-pw0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751800Ab2BUEaQ convert rfc822-to-8bit (ORCPT ); Mon, 20 Feb 2012 23:30:16 -0500 Received: by pbcun15 with SMTP id un15so6941973pbc.19 for ; Mon, 20 Feb 2012 20:30:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=sender:from:content-type:content-transfer-encoding:subject:date :message-id:cc:to:mime-version:x-mailer; bh=4C5zQdONslNIQYiHmWHR1lo8zSUg3jRxtOVwhR04CwU=; b=EydMdjudbeRVFGWSVlR91jbHd/9W1BrGlBo6rBLiRuZjb5eRiW6Af7Wc0gnCRIMoeD 0Rbqod80ddh6xlBEa1RvpWYEq1kqoGi3LvucPXW7THtX0MKSA22IKNRd0wUn98gqUJfD c9Z7Fv5p9NYVqFyIuZSrqtd8iycX9mqqmtCNs= Received: by 10.68.224.133 with SMTP id rc5mr52187779pbc.144.1329798616370; Mon, 20 Feb 2012 20:30:16 -0800 (PST) Received: from [192.168.0.2] (ip68-230-193-99.rd.hr.cox.net. [68.230.193.99]) by mx.google.com with ESMTPS id e10sm26551749pbv.0.2012.02.20.20.30.13 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 20 Feb 2012 20:30:15 -0800 (PST) From: Ben Collins Subject: [PATCH] KVM: PPC: check error return of kvmppc_core_vcpu_create first Date: Mon, 20 Feb 2012 23:30:11 -0500 Message-Id: <50A8F108-8055-4115-B4EB-706D97736E65@ubuntu.com> Cc: kvm-ppc@vger.kernel.org, linux-kernel@vger.kernel.org To: Alexander Graf Mime-Version: 1.0 (Apple Message framework v1257) X-Mailer: Apple Mail (2.1257) Sender: kvm-ppc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm-ppc@vger.kernel.org The result of kvmppc_core_vcpu_create() was being manipulated before it was checked for IS_ERR(). Did not see the bug occur, but caught it when looking through the code. Signed-off-by: Ben Collins --- Bluecherry: http://www.bluecherrydvr.com/ SwissDisk : http://www.swissdisk.com/ Ubuntu : http://www.ubuntu.com/ My Blog : http://ben-collins.blogspot.com/ -- To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/arch/powerpc/kvm/powerpc.c b/arch/powerpc/kvm/powerpc.c index 607fbdf..8877614 100644 --- a/arch/powerpc/kvm/powerpc.c +++ b/arch/powerpc/kvm/powerpc.c @@ -278,10 +278,14 @@ void kvm_arch_flush_shadow(struct kvm *kvm) struct kvm_vcpu *kvm_arch_vcpu_create(struct kvm *kvm, unsigned int id) { struct kvm_vcpu *vcpu; + vcpu = kvmppc_core_vcpu_create(kvm, id); + if (IS_ERR(vcpu)) + return vcpu; + vcpu->arch.wqp = &vcpu->wq; - if (!IS_ERR(vcpu)) - kvmppc_create_vcpu_debugfs(vcpu, id); + kvmppc_create_vcpu_debugfs(vcpu, id); + return vcpu; }