From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Kl9m1-0004Vb-KJ for qemu-devel@nongnu.org; Wed, 01 Oct 2008 18:02:21 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Kl9m0-0004VM-W1 for qemu-devel@nongnu.org; Wed, 01 Oct 2008 18:02:21 -0400 Received: from [199.232.76.173] (port=44039 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Kl9m0-0004VF-Pg for qemu-devel@nongnu.org; Wed, 01 Oct 2008 18:02:20 -0400 Received: from hall.aurel32.net ([88.191.82.174]:50347) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Kl9m0-0004wG-8h for qemu-devel@nongnu.org; Wed, 01 Oct 2008 18:02:20 -0400 Received: from volta.aurel32.net ([2002:52e8:2fb:1:21e:8cff:feb0:693b]) by hall.aurel32.net with esmtpsa (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.63) (envelope-from ) id 1Kl9lz-0003G9-13 for qemu-devel@nongnu.org; Thu, 02 Oct 2008 00:02:19 +0200 Received: from aurel32 by volta.aurel32.net with local (Exim 4.69) (envelope-from ) id 1Kl9lu-0002qI-CQ for qemu-devel@nongnu.org; Thu, 02 Oct 2008 00:02:14 +0200 Date: Thu, 2 Oct 2008 00:02:14 +0200 From: Aurelien Jarno Subject: Re: [Qemu-devel] [PATCH] Reset CPU on INIT IPI Message-ID: <20081001220214.GH31270@volta.aurel32.net> References: <20080925113153.GB7754@minantech.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: <20080925113153.GB7754@minantech.com> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org On Thu, Sep 25, 2008 at 02:31:53PM +0300, Gleb Natapov wrote: > INIT IPI should reset CPU. Also non boot CPU should be halted. It will > be un-halted by SIPI. Applied, thanks. > Signed-off-by: Gleb Natapov > > diff --git a/hw/apic.c b/hw/apic.c > index 64e75ad..1a44c3a 100644 > --- a/hw/apic.c > +++ b/hw/apic.c > @@ -458,6 +458,11 @@ static void apic_init_ipi(APICState *s) > s->initial_count = 0; > s->initial_count_load_time = 0; > s->next_time = 0; > + > + cpu_reset(s->cpu_env); > + > + if (!(s->apicbase & MSR_IA32_APICBASE_BSP)) > + s->cpu_env->halted = 1; > } > > /* send a SIPI message to the CPU to start it */ > -- > Gleb. > > > -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net