From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chen Baozi Subject: Re: [PATCH V5 10/10] xen/arm64: increase MAX_VIRT_CPUS to 128 on arm64 Date: Mon, 1 Jun 2015 08:56:05 +0800 Message-ID: <20150601005605.GA12742@cbz-thinkpad> References: <1432984051-10838-1-git-send-email-cbz@baozis.org> <1432984051-10838-11-git-send-email-cbz@baozis.org> <556B0F6B.1060000@citrix.com> <556B5122.2050101@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1YzEfz-0006bC-Tf for xen-devel@lists.xenproject.org; Mon, 01 Jun 2015 01:38:04 +0000 Received: by pablj1 with SMTP id lj1so11880994pab.0 for ; Sun, 31 May 2015 18:38:01 -0700 (PDT) Content-Disposition: inline In-Reply-To: <556B5122.2050101@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Julien Grall Cc: xen-devel@lists.xenproject.org, Campbell Ian List-Id: xen-devel@lists.xenproject.org On Sun, May 31, 2015 at 07:21:22PM +0100, Julien Grall wrote: > Hi Chen, > > On 31/05/2015 16:37, Chen Baozi wrote: > > > >>On May 31, 2015, at 21:40, Julien Grall wrote: > >> > >>Hi Chen, > >> > >>On 30/05/2015 12:07, Chen Baozi wrote: > >>>From: Chen Baozi > >>> > >>>GIC-500 supports up to 128 cores in a single SoC. Increase MAX_VIRT_CPUS > >>>to 128 on arm64. > >> > >>Where did you find this restriction? AFAICT the changes you made in the vGICv3 driver allow us to use up to 4096 CPUs. > > > >In ARM DDI0516B (ARM CoreLinkTM GIC-500 Generic Interrupt Controller > >Technical Reference Manual): > > > >1.1 About the GIC-500 > > > >The GIC-500 is a build-time configurable interrupt controller that supports up to 128 cores. > >... > > > >And GIC-500 is the only GICv3 implementation as far as I know. > > The only implementation hardware ;). The vGICv3 in both KVM and Xen are 2 > other implementations but software. > > For instance, with your series a cluster can use up to 16 cores but the > GIC-500 is only supporting up to 8 cores... Well, if 4096 is a acceptable value, it will cost 512M address space for GICR_* (We need to chagne patch #1 too). Although we do have enough space for GICR_* before it reaches the GNTTAB region, I don't think it is a good idea to increase MAX_VIRT_CPUS to such a big one. And I've also check the old value of MAX_VIRT_CPUS, it used to be 128 before aa25a61. Or do you have a better suggestion? Cheers, Baozi.