From: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: Peter Maydell <peter.maydell@linaro.org>,
Gleb Natapov <gleb@redhat.com>,
Jan Kiszka <jan.kiszka@siemens.com>,
Markus Armbruster <armbru@redhat.com>,
qemu-devel <qemu-devel@nongnu.org>,
Gerd Hoffmann <kraxel@redhat.com>,
John Williams <john.williams@petalogix.com>
Subject: Re: [Qemu-devel] [RFC] Plan for moving forward with QOM
Date: Sat, 17 Sep 2011 04:35:32 +0200 [thread overview]
Message-ID: <20110917023532.GJ20455@zapo> (raw)
In-Reply-To: <4E740203.2050705@codemonkey.ws>
On Fri, Sep 16, 2011 at 09:12:19PM -0500, Anthony Liguori wrote:
> On 09/16/2011 08:11 PM, Edgar E. Iglesias wrote:
> >On Fri, Sep 16, 2011 at 11:10:19AM -0500, Anthony Liguori wrote:
> >>On 09/16/2011 09:46 AM, John Williams wrote:
> >>>On Thu, Sep 15, 2011 at 11:17 PM, Anthony Liguori<anthony@codemonkey.ws> wrote:
> >>>>On 09/15/2011 01:31 AM, Gleb Natapov wrote:
> >>>>>
> >>>>>On Wed, Sep 14, 2011 at 01:04:00PM -0500, Anthony Liguori wrote:
> >>>>>>
> >>>>>>All device relationships are identified as named properties. A QOM
> >>>>>>path name
> >>>>>>consists of a named device, followed by a series of properties which
> >>>>>>may or may
> >>>>>>not refer to other devices. For instance, all of the following are
> >>>>>>valid paths:
> >>>>>>
> >>>>>> /i440fx/piix3/i8042/aux
> >>>>>> /i440fx/slot[1.0]/i8042/aux
> >>>>>> /i440fx/slot[1.0]/bus/piix3/i8042/aux
> >>>>>>
> >>>>>Have you looked at device paths generated by get_fw_dev_path() in qdev?
> >>>>
> >>>>get_fw_dev_path() won't exist in QOM. The fact that it exists in qdev is a
> >>>>problem with qdev.
> >>>>
> >>>>>This function generates Open Firmware device path.
> >>>>
> >>>>The function generates *a* OF device path. OF is not a canonical
> >>>>representation of arbitrary hardware. It's a representation chosen (usually
> >>>>by a human) of what information about the hardware is needed by the OS-level
> >>>>software.
> >>>
> >>>That need not be the case - with the
> >>>
> >>> link=<&target>
> >>>
> >>>syntax, device trees can be topologically accurate descriptions - this
> >>>is part of our still-unreviewed patchset,
> >>
> >>It's not unreviewed. Any type of machine configuration needs to be
> >>done using qdev/qom factory interfaces, not implementing custom
> >>logic tied to a config format.
> >>
> >>Can you construct OF paths based on link attributes? What would
> >>that look like in practice?
> >>
> >>>Another counter-example - our device trees are autogenerated out of a
> >>>high level system synthesis tool. One path is a device tree for QEMU
> >>>and kernel configuration, the other is to actually create the system
> >>>based on a high level design specification.
> >>
> >>That's all well and good, but the mechanism that I think is
> >>important to have in QEMU is a programmatic interface for
> >>constructing and manipulating the guest devices. A config file is
> >>not a programmatic interface. You can implement config file support
> >>in terms of a programmatic interface but implementing the later in
> >>terms of the former is extremely painful.
> >
> >I agree, but I also thinik that we have to be a bit pragmatic
>
> It's not pragmatic to leave something that's mostly broken alone and
> tack on something new that replicates the function to gain a new
> feature.
>
> It just results in more cruft and makes it harder to ever fix the real problem.
Yes, but that thinking can be applied recurseivly. Forever. There's always
going to be new and better interfaces in the future.
> >in the
> >sense that if the external interfaces won't be available until years
> >from now, we should take iternmediate steps.
>
> These are the intermediate steps:
>
> http://wiki.qemu.org/Features/QOM#TODO
>
> We really aren't that far away from fixing qdev and making all of
> these problems go away.
>
> >We've all got imaginary interfaces in our minds, but as long as
> >these are nowhere near reality,
>
> They are very much reality and they aren't imaginary. Code exists,
> we just need to move in a common direction here and spend some time
> fixing past mistakes.
Yes. Don't missunderstand me, I like the way QOM is heading. I think
it is reasonable to wait for QOM and an RPC interface to come along.
But it also depends on the time it takes. These topics have, and can be
discussed for a long time while we have users waiting for features.
Last time this was discussed, qdev was the answer. Now, QOM is the
answer. In the future QOM2 will be the answer.
Let's give QOM a shot, but if it doesn't happen within reasonable
time, we'll have to consider reviweing qdev approches., IMHO.
I don't wan't to hurry QOM, but I will ping in 6 months or a year
or so.
Cheers
next prev parent reply other threads:[~2011-09-17 2:35 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-14 18:04 [Qemu-devel] [RFC] Plan for moving forward with QOM Anthony Liguori
2011-09-14 18:49 ` Anthony Liguori
2011-09-14 19:30 ` Jan Kiszka
2011-09-14 19:42 ` Anthony Liguori
2011-09-14 21:15 ` Jan Kiszka
2011-09-14 22:11 ` Anthony Liguori
2011-09-15 13:43 ` Jan Kiszka
2011-09-15 14:11 ` Anthony Liguori
2011-09-15 16:38 ` Jan Kiszka
2011-09-15 18:01 ` Anthony Liguori
2011-09-16 10:12 ` Kevin Wolf
2011-09-16 13:00 ` Anthony Liguori
2011-09-14 20:00 ` Edgar E. Iglesias
2011-09-14 20:22 ` Anthony Liguori
2011-09-14 20:27 ` Edgar E. Iglesias
2011-09-14 20:37 ` Blue Swirl
2011-09-14 21:25 ` Anthony Liguori
2011-09-15 6:31 ` Gleb Natapov
2011-09-15 10:49 ` Stefan Hajnoczi
2011-09-15 13:08 ` Anthony Liguori
2011-09-15 13:17 ` Anthony Liguori
2011-09-15 14:23 ` Gleb Natapov
2011-09-16 14:46 ` John Williams
2011-09-16 16:10 ` Anthony Liguori
2011-09-17 1:11 ` Edgar E. Iglesias
2011-09-17 2:12 ` Anthony Liguori
2011-09-17 2:35 ` Edgar E. Iglesias [this message]
2011-09-15 13:57 ` Anthony Liguori
2011-09-15 14:14 ` Paolo Bonzini
2011-09-15 14:25 ` Gleb Natapov
2011-09-15 15:28 ` Anthony Liguori
2011-09-15 15:38 ` Gleb Natapov
2011-09-15 16:33 ` Anthony Liguori
2011-09-15 16:59 ` Gleb Natapov
2011-09-15 17:51 ` Anthony Liguori
2011-09-15 20:29 ` Gleb Natapov
2011-09-15 20:45 ` Peter Maydell
2011-09-15 21:15 ` Anthony Liguori
2011-09-16 16:33 ` Gleb Natapov
2011-09-16 17:47 ` Peter Maydell
2011-09-16 18:08 ` Anthony Liguori
2011-09-16 18:22 ` Gleb Natapov
2011-09-16 18:42 ` Anthony Liguori
2011-09-16 19:13 ` Gleb Natapov
2011-09-16 19:29 ` Anthony Liguori
2011-09-16 20:48 ` Gleb Natapov
2011-09-16 21:03 ` Anthony Liguori
2011-09-17 0:01 ` Edgar E. Iglesias
2011-09-16 18:18 ` Gleb Natapov
2011-09-15 20:50 ` Anthony Liguori
2011-09-16 16:47 ` Gleb Natapov
2011-09-17 0:48 ` Edgar E. Iglesias
2011-09-17 2:17 ` Anthony Liguori
2011-09-17 2:29 ` Anthony Liguori
2011-09-17 2:41 ` Edgar E. Iglesias
2011-09-15 6:47 ` Paolo Bonzini
2011-09-15 13:26 ` Anthony Liguori
2011-09-15 13:35 ` Paolo Bonzini
2011-09-15 13:54 ` Peter Maydell
2011-09-15 14:18 ` Anthony Liguori
2011-09-15 14:33 ` Paolo Bonzini
2011-09-15 14:48 ` Peter Maydell
2011-09-15 15:31 ` Anthony Liguori
2011-09-15 15:47 ` Paolo Bonzini
2011-09-15 20:23 ` Avi Kivity
2011-09-15 20:52 ` Anthony Liguori
2011-09-18 7:56 ` Avi Kivity
2011-09-18 14:00 ` Avi Kivity
2011-09-16 9:36 ` Gerd Hoffmann
2011-12-13 4:47 ` Paul Brook
2011-12-13 13:22 ` Anthony Liguori
2011-12-13 17:40 ` Paul Brook
2011-12-13 18:00 ` Anthony Liguori
2011-12-13 20:36 ` Paul Brook
2011-12-13 21:53 ` Anthony Liguori
2011-12-14 0:39 ` Paul Brook
2011-12-14 13:53 ` Anthony Liguori
2011-12-14 14:01 ` Avi Kivity
2011-12-14 14:11 ` Anthony Liguori
2011-12-14 14:35 ` Avi Kivity
2011-12-14 14:46 ` Anthony Liguori
2011-12-14 14:50 ` Avi Kivity
2011-12-15 18:59 ` Paul Brook
2011-12-15 19:12 ` Anthony Liguori
2011-12-15 21:28 ` Paul Brook
2011-12-16 2:08 ` Anthony Liguori
2011-12-16 5:11 ` Paul Brook
2011-12-14 9:11 ` Andreas Färber
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110917023532.GJ20455@zapo \
--to=edgar.iglesias@gmail.com \
--cc=anthony@codemonkey.ws \
--cc=armbru@redhat.com \
--cc=gleb@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=john.williams@petalogix.com \
--cc=kraxel@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).