From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Nn6Lc-0002qH-MC for qemu-devel@nongnu.org; Thu, 04 Mar 2010 03:23:56 -0500 Received: from [199.232.76.173] (port=42727 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Nn6Lb-0002pP-Ru for qemu-devel@nongnu.org; Thu, 04 Mar 2010 03:23:55 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1Nn6LZ-0000sS-NB for qemu-devel@nongnu.org; Thu, 04 Mar 2010 03:23:55 -0500 Received: from fmmailgate02.web.de ([217.72.192.227]:51399) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Nn6LZ-0000sC-6L for qemu-devel@nongnu.org; Thu, 04 Mar 2010 03:23:53 -0500 Message-ID: <4B8F6E12.8040707@web.de> Date: Thu, 04 Mar 2010 09:23:46 +0100 From: Jan Kiszka MIME-Version: 1.0 References: <20100303160022.GG16909@redhat.com> <4B8EF1FE.7020000@web.de> <20100304064723.GH16909@redhat.com> In-Reply-To: <20100304064723.GH16909@redhat.com> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enig122FF219D0669B2C1886A6EB" Sender: jan.kiszka@web.de Subject: [Qemu-devel] Re: [PATCH v4 03/10] x86: Extend validity of cpu_is_bsp List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gleb Natapov Cc: Marcelo Tosatti , Avi Kivity , kvm@vger.kernel.org, qemu-devel@nongnu.org This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig122FF219D0669B2C1886A6EB Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Gleb Natapov wrote: > On Thu, Mar 04, 2010 at 12:34:22AM +0100, Jan Kiszka wrote: >> Gleb Natapov wrote: >>> On Mon, Mar 01, 2010 at 06:17:22PM +0100, Jan Kiszka wrote: >>>> As we hard-wire the BSP to CPU 0 anyway and cpuid_apic_id equals >>>> cpu_index, cpu_is_bsp can also be based on the latter directly. This= >>>> will help an early user of it: KVM while initializing mp_state. >>>> >>>> Signed-off-by: Jan Kiszka >>>> --- >>>> hw/pc.c | 3 ++- >>>> 1 files changed, 2 insertions(+), 1 deletions(-) >>>> >>>> diff --git a/hw/pc.c b/hw/pc.c >>>> index b90a79e..58c32ea 100644 >>>> --- a/hw/pc.c >>>> +++ b/hw/pc.c >>>> @@ -767,7 +767,8 @@ static void pc_init_ne2k_isa(NICInfo *nd) >>>> =20 >>>> int cpu_is_bsp(CPUState *env) >>>> { >>>> - return env->cpuid_apic_id =3D=3D 0; >>>> + /* We hard-wire the BSP to the first CPU. */ >>>> + return env->cpu_index =3D=3D 0; >>>> } >>> We should not assume that. The function was written like that >>> specifically so the code around it will not rely on this assumption. >>> Now you change that specifically to write code that will do incorrect= >>> assumptions. I don't see the logic here. >> The logic is that we do not support any other mapping yet - with or >> without this change. Without it, we complicate the APIC initialization= >> for (so far) no good reason. Once we want to support different BSP >> assignments, we need to go through the code and rework some parts anyw= ay. >> > As far as I remember the only part that was missing was a command line = to > specify apic IDs for each CPU and what CPU is BSP. The code was ready > otherwise. I's very sad if this was broken by other modifications. But > changes like that actually pushes us back from our goal. Why not rework= > code so it will work with correct cpu_is_bsp() function instead of > introducing this hack? If you can confirm that there is a serious use case behind it, I will look into this again. But so far, I did not find it. Jan --------------enig122FF219D0669B2C1886A6EB Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org iEYEARECAAYFAkuPbhYACgkQitSsb3rl5xRuKgCdHash7JmWzgk69dj6u+V2mRU6 euoAoJ1fP5Ouzc+Yat7T4srsPAyMjveZ =FBfj -----END PGP SIGNATURE----- --------------enig122FF219D0669B2C1886A6EB--