All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel P. Berrange" <berrange@redhat.com>
To: "Andreas Färber" <afaerber@suse.de>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
	qemu-devel@nongnu.org, Markus Armbruster <armbru@redhat.com>
Subject: Re: [Qemu-devel] [PULL v2 07/12] vl: Create (most) objects before creating chardev backends
Date: Fri, 19 Jun 2015 11:49:31 +0100	[thread overview]
Message-ID: <20150619104931.GA7018@redhat.com> (raw)
In-Reply-To: <5583E8E1.7090604@suse.de>

On Fri, Jun 19, 2015 at 12:03:13PM +0200, Andreas Färber wrote:
> Am 27.05.2015 um 20:20 schrieb Andreas Färber:
> > From: "Daniel P. Berrange" <berrange@redhat.com>
> > 
> > Some types of object must be created before chardevs, other types of
> > object must be created after chardevs. As such there is no option but
> > to create objects in two phases.
> > 
> > This takes the decision to create as many object types as possible
> > right away before anyother backends are created, and only delay
> > creation of those few which have an explicit dependency on the
> > chardevs. Hopefully the set which need delaying will remain small
> > over time.
> > 
> > Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
> > Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
> > Signed-off-by: Andreas Färber <afaerber@suse.de>
> > ---
> >  vl.c | 40 +++++++++++++++++++++++++++++++++++++++-
> >  1 file changed, 39 insertions(+), 1 deletion(-)
> 
> Rebasing my queue, I needed the attached changes to make it apply and
> build. Second pairs of eyes welcome.


> @@@ -4114,14 -4062,16 +4145,20 @@@ int main(int argc, char **argv, char **
>   
>       socket_init();
>   
> +     if (qemu_opts_foreach(qemu_find_opts("object"),
> +                           object_create,
>  -                          object_create_initial, 0) != 0) {
> ++                          object_create_initial, NULL)) {
> +         exit(1);
> +     }
> + 
>  -    if (qemu_opts_foreach(qemu_find_opts("chardev"), chardev_init_func, NULL, 1) != 0)
>  +    if (qemu_opts_foreach(qemu_find_opts("chardev"),
>  +                          chardev_init_func, NULL, NULL)) {
>           exit(1);
>  +    }
>  +
>   #ifdef CONFIG_VIRTFS
>  -    if (qemu_opts_foreach(qemu_find_opts("fsdev"), fsdev_init_func, NULL, 1) != 0) {
>  +    if (qemu_opts_foreach(qemu_find_opts("fsdev"),
>  +                          fsdev_init_func, NULL, NULL)) {
>           exit(1);
>       }
>   #endif
> @@@ -4137,7 -4087,8 +4174,8 @@@
>       }
>   
>       if (qemu_opts_foreach(qemu_find_opts("object"),
> -                           object_create, NULL, NULL)) {
> +                           object_create,
>  -                          object_create_delayed, 0) != 0) {
> ++                          object_create_delayed, NULL)) {
>           exit(1);
>       }

Yep, this looks correct wrt the change of Markus' that recently
merged in vl.c

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

  parent reply	other threads:[~2015-06-19 10:49 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-27 18:20 [Qemu-devel] [PULL v2 00/12] QOM devices patch queue 2015-05-27 Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 01/12] qom: strdup() target property name on object_property_add_alias() Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 02/12] qdev: Free property names after registering gpio aliases Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 03/12] tests: Use qtest_add_data_func() consistently Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 04/12] scripts: Add support for path as argument of qom-tree Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 05/12] backends: Fix typename of 'policy' enum property in hostmem obj Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 06/12] doc: Document user creatable object types in help text Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 07/12] vl: Create (most) objects before creating chardev backends Andreas Färber
2015-06-19 10:03   ` Andreas Färber
2015-06-19 10:04     ` Paolo Bonzini
2015-06-19 10:49     ` Daniel P. Berrange [this message]
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 08/12] qom: Add helper method for getting user objects root Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 09/12] qom: Add object_new_with_props() / object_new_withpropv() helpers Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 10/12] qom: Make enum string tables const-correct Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 11/12] qom: Add an object_property_add_enum() helper function Andreas Färber
2015-05-27 18:20 ` [Qemu-devel] [PULL v2 12/12] qom: Add object_property_add_const_link() Andreas Färber
2015-05-28 11:46 ` [Qemu-devel] [PULL v2 00/12] QOM devices patch queue 2015-05-27 Peter Maydell
2015-06-19  8:45   ` Andreas Färber
2015-06-19  8:56     ` Peter Maydell

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=20150619104931.GA7018@redhat.com \
    --to=berrange@redhat.com \
    --cc=afaerber@suse.de \
    --cc=armbru@redhat.com \
    --cc=pbonzini@redhat.com \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.