From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E1EE4C2D0CE for ; Tue, 21 Jan 2020 23:18:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id BF82224656 for ; Tue, 21 Jan 2020 23:18:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728797AbgAUXSf (ORCPT ); Tue, 21 Jan 2020 18:18:35 -0500 Received: from mga12.intel.com ([192.55.52.136]:57248 "EHLO mga12.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728665AbgAUXSf (ORCPT ); Tue, 21 Jan 2020 18:18:35 -0500 X-Amp-Result: UNSCANNABLE X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 21 Jan 2020 15:18:34 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,347,1574150400"; d="scan'208";a="227493488" Received: from sjchrist-coffee.jf.intel.com (HELO linux.intel.com) ([10.54.74.202]) by orsmga003.jf.intel.com with ESMTP; 21 Jan 2020 15:18:33 -0800 Date: Tue, 21 Jan 2020 15:18:33 -0800 From: Sean Christopherson To: Paolo Bonzini Cc: Paul Mackerras , Marc Zyngier , James Hogan , Christian Borntraeger , Janosch Frank , James Morse , Julien Thierry , Suzuki K Poulose , David Hildenbrand , Cornelia Huck , Vitaly Kuznetsov , Wanpeng Li , Jim Mattson , Joerg Roedel , linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, linux-mips@vger.kernel.org, kvm-ppc@vger.kernel.org, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, Greg Kurz Subject: Re: [PATCH v2 12/45] KVM: PPC: Allocate vcpu struct in common PPC code Message-ID: <20200121231833.GB12692@linux.intel.com> References: <20191218215530.2280-1-sean.j.christopherson@intel.com> <20191218215530.2280-13-sean.j.christopherson@intel.com> <20200120040412.GF14307@blackberry> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org On Tue, Jan 21, 2020 at 12:05:00PM +0100, Paolo Bonzini wrote: > On 20/01/20 05:04, Paul Mackerras wrote: > > On Wed, Dec 18, 2019 at 01:54:57PM -0800, Sean Christopherson wrote: > >> Move allocation of all flavors of PPC vCPUs to common PPC code. All > >> variants either allocate 'struct kvm_vcpu' directly, or require that > >> the embedded 'struct kvm_vcpu' member be located at offset 0, i.e. > >> guarantee that the allocation can be directly interpreted as a 'struct > >> kvm_vcpu' object. > >> > >> Remove the message from the build-time assertion regarding placement of > >> the struct, as compatibility with the arch usercopy region is no longer > >> the sole dependent on 'struct kvm_vcpu' being at offset zero. > >> > >> Signed-off-by: Sean Christopherson > > > > This fails to compile for Book E configs: > > > > CC arch/powerpc/kvm/e500.o > > /home/paulus/kernel/kvm/arch/powerpc/kvm/e500.c: In function ‘kvmppc_core_vcpu_create_e500’: > > /home/paulus/kernel/kvm/arch/powerpc/kvm/e500.c:464:9: error: return makes integer from pointer without a cast [-Werror=int-conversion] > > return vcpu; > > ^ > > cc1: all warnings being treated as errors > > make[3]: *** [/home/paulus/kernel/kvm/scripts/Makefile.build:266: arch/powerpc/kvm/e500.o] Error 1 > > > > There is a "return vcpu" statement in kvmppc_core_vcpu_create_e500(), > > and another in kvmppc_core_vcpu_create_e500mc(), which both need to be > > changed to "return 0". > > > > (By the way, I do appreciate you fixing the PPC code, even if there > > are some errors.) > > Squashed: Thanks for cleaning up after me, not having to rebase and resend this series made my day :-) > diff --git a/arch/powerpc/kvm/e500.c b/arch/powerpc/kvm/e500.c > index 96d9cde3d2e3..f5dd2c7adcd4 100644 > --- a/arch/powerpc/kvm/e500.c > +++ b/arch/powerpc/kvm/e500.c > @@ -461,7 +461,7 @@ static int kvmppc_core_vcpu_create_e500(struct kvm *kvm, struct kvm_vcpu *vcpu, > goto uninit_tlb; > } > > - return vcpu; > + return 0; > > uninit_tlb: > kvmppc_e500_tlb_uninit(vcpu_e500); > diff --git a/arch/powerpc/kvm/e500mc.c b/arch/powerpc/kvm/e500mc.c > index aea588f73bf7..7c0d392f667a 100644 > --- a/arch/powerpc/kvm/e500mc.c > +++ b/arch/powerpc/kvm/e500mc.c > @@ -327,7 +327,7 @@ static int kvmppc_core_vcpu_create_e500mc(struct kvm *kvm, struct kvm_vcpu *vcpu > goto uninit_tlb; > } > > - return vcpu; > + return 0; > > uninit_tlb: > kvmppc_e500_tlb_uninit(vcpu_e500); > >