From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:34379) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UhfE2-0002E0-GZ for qemu-devel@nongnu.org; Wed, 29 May 2013 08:11:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UhfDx-0005IT-Dd for qemu-devel@nongnu.org; Wed, 29 May 2013 08:11:30 -0400 Message-ID: <51A5F06A.4040109@suse.de> Date: Wed, 29 May 2013 14:11:22 +0200 From: =?ISO-8859-15?Q?Andreas_F=E4rber?= MIME-Version: 1.0 References: <1369827271-20921-3-git-send-email-stefano.stabellini@eu.citrix.com> In-Reply-To: <1369827271-20921-3-git-send-email-stefano.stabellini@eu.citrix.com> Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH v2 3/3] xen_machine_pv: do not create a dummy CPU in machine->init List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefano Stabellini Cc: aliguori@us.ibm.com, xen-devel@lists.xensource.com, qemu-devel@nongnu.org, qemu-stable@nongnu.org, imammedo@redhat.com, anthony.perard@citrix.com, pbonzini@redhat.com Am 29.05.2013 13:34, schrieb Stefano Stabellini: > This fixes a regression introduced by: >=20 > commit 62fc403f11523169eb4264de31279745f48e3ecc > Author: Igor Mammedov > Date: Mon Apr 29 18:54:13 2013 +0200 >=20 > target-i386: Attach ICC bus to CPU on its creation >=20 > X86CPU should have parent bus so it could provide bus for child API= C. >=20 > The commit makes it mandatory to pass a valid ICC bus to cpu_x86_create= , > but cpu_x86_init just passes NULL to it. This is not entirely accurate: The ICC bus is only needed for softmmu, the envisioned remaining use case of cpu_x86_init() was bsd/linux-user. And sorry for not catching this use case, I was in a hurry for the Hard Freeze. > xen_machine_pv uses cpu_x86_init, therefore it has been broken. >=20 > This patch fixes the problem by removing the dummy CPU creation > altogether from xen_init_pv, relying on the fact that QEMU can now cope > with a machine without an emulated CPU. >=20 > This fix should be backported to QEMU 1.5. >=20 > Signed-off-by: Stefano Stabellini > CC: imammedo@redhat.com > CC: qemu-stable@nongnu.org Change looks okay, Reviewed-by: Andreas F=E4rber But for the future please avoid "this patch" in the commit message (because later on it's a "commit", not a patch) and also please put additional notices such as for backporting below the --- line. Cheers, Andreas > --- > hw/i386/xen_machine_pv.c | 16 ---------------- > 1 files changed, 0 insertions(+), 16 deletions(-) >=20 > diff --git a/hw/i386/xen_machine_pv.c b/hw/i386/xen_machine_pv.c > index f829a52..9f2e291 100644 > --- a/hw/i386/xen_machine_pv.c > +++ b/hw/i386/xen_machine_pv.c > @@ -23,7 +23,6 @@ > */ > =20 > #include "hw/hw.h" > -#include "hw/i386/pc.h" > #include "hw/boards.h" > #include "hw/xen/xen_backend.h" > #include "xen_domainbuild.h" > @@ -31,27 +30,12 @@ > =20 > static void xen_init_pv(QEMUMachineInitArgs *args) > { > - const char *cpu_model =3D args->cpu_model; > const char *kernel_filename =3D args->kernel_filename; > const char *kernel_cmdline =3D args->kernel_cmdline; > const char *initrd_filename =3D args->initrd_filename; > - X86CPU *cpu; > - CPUState *cs; > DriveInfo *dinfo; > int i; > =20 > - /* Initialize a dummy CPU */ > - if (cpu_model =3D=3D NULL) { > -#ifdef TARGET_X86_64 > - cpu_model =3D "qemu64"; > -#else > - cpu_model =3D "qemu32"; > -#endif > - } > - cpu =3D cpu_x86_init(cpu_model); > - cs =3D CPU(cpu); > - cs->halted =3D 1; > - > /* Initialize backend core & drivers */ > if (xen_be_init() !=3D 0) { > fprintf(stderr, "%s: xen backend core setup failed\n", __FUNCT= ION__); >=20 --=20 SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N=FCrnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend=F6rffer; HRB 16746 AG N=FCrnbe= rg From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?ISO-8859-15?Q?Andreas_F=E4rber?= Subject: Re: [PATCH v2 3/3] xen_machine_pv: do not create a dummy CPU in machine->init Date: Wed, 29 May 2013 14:11:22 +0200 Message-ID: <51A5F06A.4040109@suse.de> References: <1369827271-20921-3-git-send-email-stefano.stabellini@eu.citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <1369827271-20921-3-git-send-email-stefano.stabellini@eu.citrix.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+gceq-qemu-devel=gmane.org@nongnu.org Sender: qemu-devel-bounces+gceq-qemu-devel=gmane.org@nongnu.org To: Stefano Stabellini Cc: aliguori@us.ibm.com, xen-devel@lists.xensource.com, qemu-devel@nongnu.org, qemu-stable@nongnu.org, imammedo@redhat.com, anthony.perard@citrix.com, pbonzini@redhat.com List-Id: xen-devel@lists.xenproject.org Am 29.05.2013 13:34, schrieb Stefano Stabellini: > This fixes a regression introduced by: >=20 > commit 62fc403f11523169eb4264de31279745f48e3ecc > Author: Igor Mammedov > Date: Mon Apr 29 18:54:13 2013 +0200 >=20 > target-i386: Attach ICC bus to CPU on its creation >=20 > X86CPU should have parent bus so it could provide bus for child API= C. >=20 > The commit makes it mandatory to pass a valid ICC bus to cpu_x86_create= , > but cpu_x86_init just passes NULL to it. This is not entirely accurate: The ICC bus is only needed for softmmu, the envisioned remaining use case of cpu_x86_init() was bsd/linux-user. And sorry for not catching this use case, I was in a hurry for the Hard Freeze. > xen_machine_pv uses cpu_x86_init, therefore it has been broken. >=20 > This patch fixes the problem by removing the dummy CPU creation > altogether from xen_init_pv, relying on the fact that QEMU can now cope > with a machine without an emulated CPU. >=20 > This fix should be backported to QEMU 1.5. >=20 > Signed-off-by: Stefano Stabellini > CC: imammedo@redhat.com > CC: qemu-stable@nongnu.org Change looks okay, Reviewed-by: Andreas F=E4rber But for the future please avoid "this patch" in the commit message (because later on it's a "commit", not a patch) and also please put additional notices such as for backporting below the --- line. Cheers, Andreas > --- > hw/i386/xen_machine_pv.c | 16 ---------------- > 1 files changed, 0 insertions(+), 16 deletions(-) >=20 > diff --git a/hw/i386/xen_machine_pv.c b/hw/i386/xen_machine_pv.c > index f829a52..9f2e291 100644 > --- a/hw/i386/xen_machine_pv.c > +++ b/hw/i386/xen_machine_pv.c > @@ -23,7 +23,6 @@ > */ > =20 > #include "hw/hw.h" > -#include "hw/i386/pc.h" > #include "hw/boards.h" > #include "hw/xen/xen_backend.h" > #include "xen_domainbuild.h" > @@ -31,27 +30,12 @@ > =20 > static void xen_init_pv(QEMUMachineInitArgs *args) > { > - const char *cpu_model =3D args->cpu_model; > const char *kernel_filename =3D args->kernel_filename; > const char *kernel_cmdline =3D args->kernel_cmdline; > const char *initrd_filename =3D args->initrd_filename; > - X86CPU *cpu; > - CPUState *cs; > DriveInfo *dinfo; > int i; > =20 > - /* Initialize a dummy CPU */ > - if (cpu_model =3D=3D NULL) { > -#ifdef TARGET_X86_64 > - cpu_model =3D "qemu64"; > -#else > - cpu_model =3D "qemu32"; > -#endif > - } > - cpu =3D cpu_x86_init(cpu_model); > - cs =3D CPU(cpu); > - cs->halted =3D 1; > - > /* Initialize backend core & drivers */ > if (xen_be_init() !=3D 0) { > fprintf(stderr, "%s: xen backend core setup failed\n", __FUNCT= ION__); >=20 --=20 SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N=FCrnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend=F6rffer; HRB 16746 AG N=FCrnbe= rg