From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:37311) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UeTP1-0004u2-L1 for qemu-devel@nongnu.org; Mon, 20 May 2013 12:57:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UeTOv-0007wg-VJ for qemu-devel@nongnu.org; Mon, 20 May 2013 12:57:39 -0400 Message-ID: <519A55F3.8090101@redhat.com> Date: Mon, 20 May 2013 10:57:23 -0600 From: Eric Blake MIME-Version: 1.0 References: <1369066884-431-1-git-send-email-peter.maydell@linaro.org> <519A522F.80305@redhat.com> In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="----enig2RKGSLADFRWMBJSWMJLOW" Subject: Re: [Qemu-devel] [PATCH] qapi-schema.json: Reformat TargetType enum to one-per-line List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: Anthony Liguori , patches@linaro.org, qemu-trivial@nongnu.org, John Rigby , qemu-devel@nongnu.org, =?UTF-8?B?QW5kcmVhcyBGw6RyYmVy?= This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2RKGSLADFRWMBJSWMJLOW Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 05/20/2013 10:47 AM, Peter Maydell wrote: > On 20 May 2013 17:41, Eric Blake wrote: >> Yep, that raises (once again) the question of dynamic introspection - >> there's a difference between the maximum amount of information known a= t >> compile time, and the subset of enum values that are actually usable a= t >> runtime. This list is static (all known architectures) >=20 > It's not really static though for practical purposes. The user > still has to be able to cope with "I know about architecture foo > but it's not in the list" (if talking to an older qemu) or > "the list contains architecture bar which I don't know about" > (if talking to a newer qemu). I think the only thing we really > need to avoid is changing the name of an existing architecture? I'm not talking about keeping the enum static as in unchanging in all future qemu releases, so much as static in that "at the time qemu was compiled, this was the list of architectures qemu knew about". But what good does it do to know what other architectures the compile-time qemu knew about, when what we really care about is what does THIS qemu binary emulate. And Paolo raised the point that what we really care about is static-per-binary - that is, each binary supports exactly one architecture (unless you are doing a LOT of work to support multi-arch emulation from a single binary!). Changing the name of an architecture would be reflected by having a different qemu-FOO binary name, right? If that's the case, then introspection of which architectures are supported is done by listing all the matches to qemu-* in the directory where binaries are installed, and we don't need a QMP enum duplicating what the file system already tells us. --=20 Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org ------enig2RKGSLADFRWMBJSWMJLOW Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.13 (GNU/Linux) Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJRmlXzAAoJEKeha0olJ0NqYxwH/3xY/FGqDFnpAo5msw6GWJEA 1FaSBqhYcH45PfXX4EI7gpfWV7fmZHBWS2gRYjgSEGQeCD4TzjL5werjVgOiZakQ oKKaG0qmtXYnx5GFwHlRUrBdJ6GJCID/kdhmJC/zQWIrZ9gv6QviReBWSvlYdb7O 7SDOZbZsXAWyt1Ajmpu0yDgE3xHmvRyU9TyoJncGqMD26oarwgjRIR4VxhBsBESl mdKHyY5ZPny2VsiW+wLeOL9cnklzvtWYae575GAihV+rBPsr2+N2lGo3uInA5Djx 7LX/LCD6fsBZdKTnXmNWWI0XWTBMdE7S5f4z3D71e35oWuriXL9qQGlULZOUzlg= =mwN2 -----END PGP SIGNATURE----- ------enig2RKGSLADFRWMBJSWMJLOW--