From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37239) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V2JE8-0003Gf-93 for qemu-devel@nongnu.org; Thu, 25 Jul 2013 06:56:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V2JE5-00016j-2V for qemu-devel@nongnu.org; Thu, 25 Jul 2013 06:56:56 -0400 Received: from mx1.redhat.com ([209.132.183.28]:31556) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V2JE4-00016b-Ra for qemu-devel@nongnu.org; Thu, 25 Jul 2013 06:56:52 -0400 Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r6PAuqtT002511 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Thu, 25 Jul 2013 06:56:52 -0400 Date: Thu, 25 Jul 2013 13:58:13 +0300 From: "Michael S. Tsirkin" Message-ID: <20130725105813.GA28874@redhat.com> References: <1374681580-17439-1-git-send-email-mst@redhat.com> <1374681580-17439-13-git-send-email-mst@redhat.com> <51F0FE20.7050302@redhat.com> <20130725105526.GA28819@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20130725105526.GA28819@redhat.com> Subject: Re: [Qemu-devel] [PATCH v3 12/14] pvpanic: add API to access io port List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gerd Hoffmann Cc: qemu-devel@nongnu.org On Thu, Jul 25, 2013 at 01:55:26PM +0300, Michael S. Tsirkin wrote: > On Thu, Jul 25, 2013 at 12:29:52PM +0200, Gerd Hoffmann wrote: > > On 07/24/13 18:02, Michael S. Tsirkin wrote: > > > Add API to find pvpanic device and get its io port. > > > Will be used to fill in guest info structure. > > > > > +uint16_t pvpanic_port(void) > > > +{ > > > + Object *o = object_resolve_path_type("", TYPE_ISA_PVPANIC_DEVICE, NULL); > > > + PVPanicState *s; > > > + if (!o) { > > > + return 0; > > > + } > > > > return object_property_get_int(o, "ioport"); > > } > > > > Then you don't need PVPanicState access and can place the code into > > acpi-build.c. > > > > cheers, > > Gerd > > I can change the implementation but I don't think it's > a good idea to copy property names around: > it's too fragile, compiler won't warn us if we > change the name or value semantics, or make > a mistake in acpi-build.c And even within pvpanic.c, this will make me copy-paste the "ioport" string or create yet another macro. s = ISA_PVPANIC_DEVICE(o); return s->ioport; seems nicer. > Same applies to TYPE_ISA_PVPANIC_DEVICE: better > to expose an API than expose the type externally. > -- > MST