[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v3 4/5] tools, libxl: parse optional start gfn from the iomem config option



On sab, 2014-03-15 at 22:35 +0000, Julien Grall wrote:
> On 15/03/14 20:11, Arianna Avanzini wrote:
> > diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
> > index a6663b9..d9684f2 100644
> > --- a/docs/man/xl.cfg.pod.5
> > +++ b/docs/man/xl.cfg.pod.5
> > @@ -602,12 +602,13 @@ is given in hexadecimal and may either a span e.g. 
> > C<2f8-2ff>
> >   It is recommended to use this option only for trusted VMs under
> >   administrator control.
> >
> > -=item B<iomem=[ "IOMEM_START,NUM_PAGES", "IOMEM_START,NUM_PAGES", ... ]>
> > +=item B<iomem=[ "IOMEM_START,NUM_PAGES[@GFN]", 
> > "IOMEM_START,NUM_PAGES[@GFN]", ... ]>
> >
> >   Allow guest to access specific hardware I/O memory pages. B<IOMEM_START>
> >   is a physical page number. B<NUM_PAGES> is the number
> > -of pages beginning with B<START_PAGE> to allow access. Both values
> > -must be given in hexadecimal.
> > +of pages beginning with B<START_PAGE> to allow access. B<GFN> specifies
> > +the guest frame number where the mapping will start in the domU's
> > +address space. All of these values must be given in hexadecimal.
> >
> >   It is recommended to use this option only for trusted VMs under
> >   administrator control.
> > diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
> > index 612645c..f0bdb09 100644
> > --- a/tools/libxl/libxl_types.idl
> > +++ b/tools/libxl/libxl_types.idl
> > @@ -172,6 +172,7 @@ libxl_ioport_range = Struct("ioport_range", [
> >   libxl_iomem_range = Struct("iomem_range", [
> >       ("start", uint64),
> >       ("number", uint64),
> > +    ("gfn", uint64),
> 
> I'm not a libxl expert, but you are modifying an existing structure. Ian 
> & Ian, do we need to bump the interface version?
> 
I think what we need is the proper LIBXL_HAVE_FOO stuff.

 * In the event that a change is required which cannot be made
 * backwards compatible in this manner a #define of the form
 * LIBXL_HAVE_<interface> will always be added in order to make it
 * possible to write applciations which build against any version of
 * libxl. 

Arianna, try this:
$ grep LIBXL_HAVE_ tools/libxl/libxl.h

And look at one of the examples, e.g.:

/*
 * LIBXL_HAVE_DOMAIN_NODEAFFINITY indicates that a 'nodemap' field
 * (of libxl_bitmap type) is present in libxl_domain_build_info,
 * containing the node-affinity for the domain.
 */
#define LIBXL_HAVE_DOMAIN_NODEAFFINITY 1

The commit this was introduced by is a5d30c23, in case that helps.

Regards,
Dario

-- 
<<This happens because I choose it to happen!>> (Raistlin Majere)
-----------------------------------------------------------------
Dario Faggioli, Ph.D, http://about.me/dario.faggioli
Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK)

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.