From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: Re: [PATCH 0/4] CPU hotplug port from qemu-traditionnal to qemu-xen for 4.3. Date: Mon, 3 Jun 2013 12:12:52 +0100 Message-ID: <51AC7A34.3010102@citrix.com> References: <1370017993-13437-1-git-send-email-anthony.perard@citrix.com> <1370248908.404.11.camel@zakaz.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1370248908.404.11.camel@zakaz.uk.xensource.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: Ian Campbell Cc: Stefano Stabellini , Xen Devel List-Id: xen-devel@lists.xenproject.org On 03/06/13 09:41, Ian Campbell wrote: >> > BUG: There is an issue with SeaBIOS (used with qemu-xen). At SMP >> > initialisation, SeaBIOS will count the number of CPU running, and the number is >> > always equal to maxvcpu when SeaBIOS expect less. This happen when we have >> > something like: >> > vcpus = 2 >> > maxvcpus = 8 >> > in the VM config file. Linux is fine with this and will use only $vcpus. So >> > the probleme is: an infinit loop in SeaBIOS. > I'm a bit confused -- if SeaBIOS has an infinite loop how do you even > get to know Linux is OK? > > Do you have a fix for SeaBIOS, I don't see it in this series. The thing is, I don't know how to fix this bug. This is why there is no patch. The probleme is this loop: > u8 cmos_smp_count = inb_cmos(CMOS_BIOS_SMP_COUNT); > while (cmos_smp_count + 1 != readl(&CountCPUs)) > ; where CountCPUs is incremented by each CPU by a small piece of code and cmos_smp_count is equal to 1, which is the number of expected vcpus-1. CountCPUs always go up to maxvcpus under Xen. I could simply replace the '!=' by a '>' but it feel like a workaround... -- Anthony PERARD