From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34269) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UkCwx-0003vi-JU for qemu-devel@nongnu.org; Wed, 05 Jun 2013 08:36:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UkCwp-0001W6-DR for qemu-devel@nongnu.org; Wed, 05 Jun 2013 08:36:23 -0400 Received: from mx1.redhat.com ([209.132.183.28]:33575) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UkCwp-0001Vy-4b for qemu-devel@nongnu.org; Wed, 05 Jun 2013 08:36:15 -0400 Date: Wed, 5 Jun 2013 15:36:44 +0300 From: "Michael S. Tsirkin" Message-ID: <20130605123644.GA3638@redhat.com> References: <1370371954-8479-1-git-send-email-pbonzini@redhat.com> <51AF09FC.50308@suse.de> <20130605111044.GL31830@redhat.com> <51AF21C1.3060503@suse.de> <20130605120656.GC2643@redhat.com> <51AF2DA7.1060605@suse.de> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline In-Reply-To: <51AF2DA7.1060605@suse.de> Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH 00/39] Delay destruction of memory regions to instance_finalize List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Andreas =?iso-8859-1?Q?F=E4rber?= Cc: Paolo Bonzini , qemu-devel@nongnu.org, Anthony Liguori , Jesse Larrew On Wed, Jun 05, 2013 at 02:23:03PM +0200, Andreas F=E4rber wrote: > Am 05.06.2013 14:06, schrieb Michael S. Tsirkin: > > On Wed, Jun 05, 2013 at 01:32:17PM +0200, Andreas F=E4rber wrote: > >> Am 05.06.2013 13:10, schrieb Michael S. Tsirkin: > >>> On Wed, Jun 05, 2013 at 11:50:52AM +0200, Andreas F=E4rber wrote: > >>>> Am 04.06.2013 20:51, schrieb Paolo Bonzini: > >>>>> This series changes all PCI devices (the sole to support hotplug > >>>>> _and_ use MemoryRegions) to do memory_region_del_subregion at > >>>>> unrealize time, and memory_region_destroy at instance_finalize > >>>>> time. > >>>> > >>>> The general idea looks good. > >>>> > >>>> Could you please follow-up with a patch that switches from exit to > >>>> unrealize? > >>> > >>> What do you guys think about changing the name to something > >>> else e.g. "free" or "destroy"? > >> > >> I'm not generally opposed to renaming things, but current unrealize = is a > >> pair with realize, and destroy or free doesn't really fit it's purpo= se - > >> that's instance_finalize. Let's CC Anthony. > >=20 > > So @instance_init -> instance_alloc >=20 > No, allocation happens before instance_init, it only initializes fields > of the instance, so that name seems good to me. >=20 > My ISA realize patches (need to respin after Paolo enabled gus) worked > towards resolving the DeviceClass::init vs. instance_init ambiguity, so > once completed only instance_init and class_init would remain as > "init"s. PCI is a bit more involved, and would collide with this series= ; > Jesse's virtio-net config size issue is calling for converting > VirtioDevice, which might be quicker. >=20 > > instance_finalize -> @instance_free? >=20 > /me misunderstandable, sorry. It doesn't free the instance either, and > Java uses "finalize" too and so does .NET iirc. Well the do not have initialize though, so if someone comes from .NET background that person will *still* be confused. I think we should use names that pair well and are not ambiguous: alloc/free create/destroy init/cleanup (some people do init/uninit) get/put ... These are all standard C things with no ambiguity. > Anyway, my point was, when moving stuff out of exit, we should also > change the signature to the new one - DeviceState* and (unused) Error**. > Then we're getting closer to removing the old exit field, and at that > point renaming individual hooks - if desired - becomes a trivial patch. >=20 > Andreas Why is renaming new hooks related to getting rid of old ones? > --=20 > SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N=FCrnberg, Germany > GF: Jeff Hawn, Jennifer Guild, Felix Imend=F6rffer; HRB 16746 AG N=FCrn= berg