From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33945) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ukrd3-00023h-2D for qemu-devel@nongnu.org; Fri, 07 Jun 2013 04:02:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ukrd1-0003du-IP for qemu-devel@nongnu.org; Fri, 07 Jun 2013 04:02:33 -0400 Received: from cantor2.suse.de ([195.135.220.15]:41934 helo=mx2.suse.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ukrd1-0003dg-93 for qemu-devel@nongnu.org; Fri, 07 Jun 2013 04:02:31 -0400 Message-ID: <51B19391.7050508@suse.de> Date: Fri, 07 Jun 2013 10:02:25 +0200 From: =?ISO-8859-15?Q?Andreas_F=E4rber?= MIME-Version: 1.0 References: <1370371954-8479-1-git-send-email-pbonzini@redhat.com> <1370371954-8479-40-git-send-email-pbonzini@redhat.com> In-Reply-To: <1370371954-8479-40-git-send-email-pbonzini@redhat.com> Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH 39/39] tpm: move add/del_subregion to realize/unrealize List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: qemu-devel@nongnu.org, mst@redhat.com Am 04.06.2013 20:52, schrieb Paolo Bonzini: > Only do init/destroy in instance_init/finalize. >=20 > Signed-off-by: Paolo Bonzini > --- > hw/tpm/tpm_tis.c | 14 ++++++++++---- > 1 file changed, 10 insertions(+), 4 deletions(-) >=20 > diff --git a/hw/tpm/tpm_tis.c b/hw/tpm/tpm_tis.c > index d4d8152..303d778 100644 > --- a/hw/tpm/tpm_tis.c > +++ b/hw/tpm/tpm_tis.c > @@ -881,24 +881,29 @@ static void tpm_tis_realizefn(DeviceState *dev, E= rror **errp) ISADevice *d =3D ISA_DEVICE(dev); > tis->bh =3D qemu_bh_new(tpm_tis_receive_bh, s); > =20 > isa_init_irq(&s->busdev, &tis->irq, tis->irq_num); isa_init_irq(d, ... > + memory_region_add_subregion(isa_address_space(&s->busdev), TPM_TIS= _ADDR_BASE, > + &s->mmio); isa_address_space(d) > +} > + > +static void tpm_tis_unrealizefn(DeviceState *dev, Error **errp) > +{ > + TPMState *s =3D TPM(dev); > + > + memory_region_del_subregion(get_system_memory(), &s->mmio); > } > =20 > static void tpm_tis_initfn(Object *obj) > { > - ISADevice *dev =3D ISA_DEVICE(obj); > TPMState *s =3D TPM(obj); > =20 > memory_region_init_io(&s->mmio, &tpm_tis_memory_ops, s, "tpm-tis-m= mio", > TPM_TIS_NUM_LOCALITIES << TPM_TIS_LOCALITY_S= HIFT); > - memory_region_add_subregion(isa_address_space(dev), TPM_TIS_ADDR_B= ASE, > - &s->mmio); Regression from here. Andreas > } > =20 > static void tpm_tis_uninitfn(Object *obj) > { > TPMState *s =3D TPM(obj); > =20 > - memory_region_del_subregion(get_system_memory(), &s->mmio); > memory_region_destroy(&s->mmio); > } > =20 > @@ -907,6 +912,7 @@ static void tpm_tis_class_init(ObjectClass *klass, = void *data) > DeviceClass *dc =3D DEVICE_CLASS(klass); > =20 > dc->realize =3D tpm_tis_realizefn; > + dc->unrealize =3D tpm_tis_unrealizefn; > dc->props =3D tpm_tis_properties; > dc->reset =3D tpm_tis_reset; > dc->vmsd =3D &vmstate_tpm_tis; >=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