WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] Re: [PATCH]: xl: move domain struct init functions to libxl

To: Gianni Tedesco <gianni.tedesco@xxxxxxxxxx>
Subject: [Xen-devel] Re: [PATCH]: xl: move domain struct init functions to libxl
From: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
Date: Tue, 11 Jan 2011 14:39:10 +0000
Cc: Xen Devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>, Stefano Stabellini <Stefano.Stabellini@xxxxxxxxxxxxx>
Delivery-date: Tue, 11 Jan 2011 06:39:57 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1294755882.12018.133.camel@xxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <1294743604.12018.122.camel@xxxxxxxxxxxxxxxxxxxxxx> <alpine.DEB.2.00.1101111249000.7277@kaball-desktop> <1294755882.12018.133.camel@xxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Alpine 2.00 (DEB 1167 2008-08-23)
On Tue, 11 Jan 2011, Gianni Tedesco wrote:
> On Tue, 2011-01-11 at 12:53 +0000, Stefano Stabellini wrote:
> > On Tue, 11 Jan 2011, Gianni Tedesco wrote:
> > > This allows libxl users to get some sane default values for this complex
> > > set of structures. This is purely code movement and there are no
> > > functional changes.
> > > 
> > > Signed-off-by: Gianni Tedesco <gianni.tedesco@xxxxxxxxxx>
> > > 
> > > 
> > > diff -r feb198f3c97f tools/libxl/libxl.h
> > > --- a/tools/libxl/libxl.h Mon Jan 10 16:03:39 2011 +0000
> > > +++ b/tools/libxl/libxl.h Tue Jan 11 10:53:36 2011 +0000
> > > @@ -280,6 +280,9 @@ int libxl_ctx_set_log(libxl_ctx *ctx, xe
> > >  int libxl_ctx_postfork(libxl_ctx *ctx);
> > >  
> > >  /* domain related functions */
> > > +void libxl_init_create_info(libxl_domain_create_info *c_info);
> > > +void libxl_init_build_info(libxl_domain_build_info *b_info, 
> > > libxl_domain_create_info *c_info);
> > > +void libxl_init_dm_info(libxl_device_model_info *dm_info, 
> > > libxl_domain_create_info *c_info, libxl_domain_build_info *b_info);
> > >  typedef int (*libxl_console_ready)(libxl_ctx *ctx, uint32_t domid, void 
> > > *priv);
> > >  int libxl_domain_create_new(libxl_ctx *ctx, libxl_domain_config 
> > > *d_config, libxl_console_ready cb, void *priv, uint32_t *domid);
> > >  int libxl_domain_create_restore(libxl_ctx *ctx, libxl_domain_config 
> > > *d_config, libxl_console_ready cb, void *priv, uint32_t *domid, int 
> > > restore_fd);
> > > diff -r feb198f3c97f tools/libxl/libxl_create.c
> > 
> > 
> > What about init_nic_info, init_net2_info, init_vfb_info, init_vkb_info
> > and init_console_info?
> > Wouldn't make sense to have a libxl_init_domain_config
> 
> Yeah good point, I can re-spin to include the various device info's.
> 
> Not sure about an init_domain_config, I don't see how it would work,
> currently we have:
> 
> libxl_domain_config x;
> init_create_info(&x.c_info);
> // do stuff to c_info
> init_build_info(&x.b_info, &x.c_info);
> // do stuff to b_info
> init_dm_info(&x.dm_info, &x.c_info, &x.b_info);
> // do stuff to dm_info
> for each device { init device; do stuff to device; }
> 
> You could init them all in one functions but it breaks IMO the main
> purpose of these functions which is that when you 'do stuff' to b_info
> then init_dm_info() depends on that to set the sane defaults (eg. for
> vidmem).
> 

No I mean instead of having:

libxl_init_nic_info, libxl_init_net2_info, etc.

we would have a single libxl_init_domain_config that does it all.
However we cannot actually do that because we don't know exactly the
number of devices of each kind we are going to have.
So forget about libxl_init_domain_config.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>