From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754751AbcHSBiA (ORCPT ); Thu, 18 Aug 2016 21:38:00 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:44428 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754437AbcHSBdD (ORCPT ); Thu, 18 Aug 2016 21:33:03 -0400 X-IBM-Helo: d23dlp01.au.ibm.com X-IBM-MailFrom: benh@au1.ibm.com X-IBM-RcptTo: kvm-ppc@vger.kernel.org;kvm@vger.kernel.org;linux-kernel@vger.kernel.org Subject: Re: [PATCH v2] powerpc: move hmi.c to arch/powerpc/kvm/ From: Benjamin Herrenschmidt Reply-To: benh@au1.ibm.com To: Paolo Bonzini , linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: Mahesh Salgaonkar , kvm-ppc@vger.kernel.org, Paul Mackerras , linuxppc-dev@lists.ozlabs.org, Daniel Axtens Date: Fri, 19 Aug 2016 07:27:53 +1000 In-Reply-To: <56286cab-c96a-55d2-1a50-38aa178edf26@redhat.com> References: <1470920863-15375-1-git-send-email-pbonzini@redhat.com> <56286cab-c96a-55d2-1a50-38aa178edf26@redhat.com> Organization: IBM Australia Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.20.4 (3.20.4-1.fc24) Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 16081821-0008-0000-0000-000000B2A92B X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 16081821-0009-0000-0000-000007E020FB Message-Id: <1471555673.19495.44.camel@au1.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2016-08-18_09:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1604210000 definitions=main-1608180280 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 2016-08-18 at 10:53 +0200, Paolo Bonzini wrote: > > On 11/08/2016 15:07, Paolo Bonzini wrote: > > > > hmi.c functions are unused unless sibling_subcore_state is nonzero, > > and > > that in turn happens only if KVM is in use.  So move the code to > > arch/powerpc/kvm/, putting it under CONFIG_KVM_BOOK3S_HV_POSSIBLE > > rather than CONFIG_PPC_BOOK3S_64.  The sibling_subcore_state is > > also > > included in struct paca_struct only if KVM is supported by the > > kernel. > Mahesh, can you review this ? > > Cc: Daniel Axtens > > Cc: Michael Ellerman > > Cc: Mahesh Salgaonkar > > Cc: Paul Mackerras > > Cc: linuxppc-dev@lists.ozlabs.org > > Cc: kvm-ppc@vger.kernel.org > > Cc: kvm@vger.kernel.org > > Signed-off-by: Paolo Bonzini > > --- > > v1->v2: use CONFIG_KVM_BOOK3S_HV_POSSIBLE, not > > CONFIG_KVM_BOOK3S_64_HANDLER.  The former implies > > the latter, but the reverse is not true. > > > >  arch/powerpc/include/asm/hmi.h                     |  2 +- > >  arch/powerpc/include/asm/paca.h                    | 12 +++++++--- > > -- > >  arch/powerpc/kernel/Makefile                       |  2 +- > >  arch/powerpc/kvm/Makefile                          |  1 + > >  arch/powerpc/{kernel/hmi.c => kvm/book3s_hv_hmi.c} |  0 > >  5 files changed, 10 insertions(+), 7 deletions(-) > >  rename arch/powerpc/{kernel/hmi.c => kvm/book3s_hv_hmi.c} (100%) > > > > diff --git a/arch/powerpc/include/asm/hmi.h > > b/arch/powerpc/include/asm/hmi.h > > index 88b4901ac4ee..85b7a1a21e22 100644 > > --- a/arch/powerpc/include/asm/hmi.h > > +++ b/arch/powerpc/include/asm/hmi.h > > @@ -21,7 +21,7 @@ > >  #ifndef __ASM_PPC64_HMI_H__ > >  #define __ASM_PPC64_HMI_H__ > >   > > -#ifdef CONFIG_PPC_BOOK3S_64 > > +#ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE > >   > >  #define CORE_TB_RESYNC_REQ_BIT 63 > >  #define MAX_SUBCORE_PER_CORE 4 > > diff --git a/arch/powerpc/include/asm/paca.h > > b/arch/powerpc/include/asm/paca.h > > index 148303e7771f..6a6792bb39fb 100644 > > --- a/arch/powerpc/include/asm/paca.h > > +++ b/arch/powerpc/include/asm/paca.h > > @@ -183,11 +183,6 @@ struct paca_struct { > >    */ > >   u16 in_mce; > >   u8 hmi_event_available;  /* HMI event is > > available */ > > - /* > > -  * Bitmap for sibling subcore status. See > > kvm/book3s_hv_ras.c for > > -  * more details > > -  */ > > - struct sibling_subcore_state *sibling_subcore_state; > >  #endif > >   > >   /* Stuff for accurate time accounting */ > > @@ -202,6 +197,13 @@ struct paca_struct { > >   struct kvmppc_book3s_shadow_vcpu shadow_vcpu; > >  #endif > >   struct kvmppc_host_state kvm_hstate; > > +#ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE > > + /* > > +  * Bitmap for sibling subcore status. See > > kvm/book3s_hv_ras.c for > > +  * more details > > +  */ > > + struct sibling_subcore_state *sibling_subcore_state; > > +#endif > >  #endif > >  }; > >   > > diff --git a/arch/powerpc/kernel/Makefile > > b/arch/powerpc/kernel/Makefile > > index b2027a5cf508..fe4c075bcf50 100644 > > --- a/arch/powerpc/kernel/Makefile > > +++ b/arch/powerpc/kernel/Makefile > > @@ -41,7 +41,7 @@ obj-$(CONFIG_VDSO32) += vdso32/ > >  obj-$(CONFIG_HAVE_HW_BREAKPOINT) += hw_breakpoint.o > >  obj-$(CONFIG_PPC_BOOK3S_64) += cpu_setup_ppc970.o > > cpu_setup_pa6t.o > >  obj-$(CONFIG_PPC_BOOK3S_64) += cpu_setup_power.o > > -obj-$(CONFIG_PPC_BOOK3S_64) += mce.o mce_power.o hmi.o > > +obj-$(CONFIG_PPC_BOOK3S_64) += mce.o mce_power.o > >  obj-$(CONFIG_PPC_BOOK3E_64) += exceptions-64e.o > > idle_book3e.o > >  obj-$(CONFIG_PPC64) += vdso64/ > >  obj-$(CONFIG_ALTIVEC) += vecemu.o > > diff --git a/arch/powerpc/kvm/Makefile b/arch/powerpc/kvm/Makefile > > index 1f9e5529e692..855d4b95d752 100644 > > --- a/arch/powerpc/kvm/Makefile > > +++ b/arch/powerpc/kvm/Makefile > > @@ -78,6 +78,7 @@ kvm-book3s_64-builtin-xics-objs- > > $(CONFIG_KVM_XICS) := \ > >   > >  ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE > >  kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \ > > + book3s_hv_hmi.o \ > >   book3s_hv_rmhandlers.o \ > >   book3s_hv_rm_mmu.o \ > >   book3s_hv_ras.o \ > > diff --git a/arch/powerpc/kernel/hmi.c > > b/arch/powerpc/kvm/book3s_hv_hmi.c > > similarity index 100% > > rename from arch/powerpc/kernel/hmi.c > > rename to arch/powerpc/kvm/book3s_hv_hmi.c > > > > Ping? > > Paolo