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

Re: [Xen-devel] [PATCH for-4.10 5/5] tools/dombuilder: Prevent failures of xc_dom_gnttab_init()



On Fri, Oct 06, 2017 at 07:04:49PM +0100, Andrew Cooper wrote:
> On 06/10/17 11:30, Roger Pau Monné wrote:
> > On Thu, Oct 05, 2017 at 06:23:44PM +0000, Andrew Cooper wrote:
> >> Recent changes in grant table configuration have caused calls to
> >> xc_dom_gnttab_init() to fail if not proceeded with a call to
> >> xc_domain_set_gnttab_limits().  This is backwards from the point of view of
> >> 3rd party dombuilder users.
> >>
> >> Add max_{grant,maptrack}_frames parameters to struct xc_dom_image, and 
> >> require
> >> them to be set by callers using xc_dom_gnttab_init().  Libxl, which uses
> >> xc_dom_gnttab_init() itself is updated appropriately.
> >>
> >> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> > Reviewed-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
> >
> > Some nits with can be fixed while committing IMHO if required.
> >
> >> ---
> >> CC: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
> >> CC: Wei Liu <wei.liu2@xxxxxxxxxx>
> >> CC: Julien Grall <julien.grall@xxxxxxx>
> >> ---
> >>  tools/libxc/include/xc_dom.h |  4 ++++
> >>  tools/libxc/xc_dom_boot.c    | 14 ++++++++++++++
> >>  tools/libxc/xc_dom_core.c    |  3 +++
> >>  tools/libxl/libxl_dom.c      | 12 ++++++------
> >>  4 files changed, 27 insertions(+), 6 deletions(-)
> >>
> >> diff --git a/tools/libxc/include/xc_dom.h b/tools/libxc/include/xc_dom.h
> >> index 790869b..8e673fb 100644
> >> --- a/tools/libxc/include/xc_dom.h
> >> +++ b/tools/libxc/include/xc_dom.h
> >> @@ -116,6 +116,10 @@ struct xc_dom_image {
> >>      domid_t console_domid;
> >>      domid_t xenstore_domid;
> >>  
> >> +    /* Grant limit configuration; mandatory if calling 
> >> xc_dom_gnttab_init(). */
> >> +    unsigned int max_grant_frames;
> >> +    unsigned int max_maptrack_frames;
> >> +
> >>      /*
> >>       * initrd parameters as specified in start_info page
> >>       * Depending on capabilities of the booted kernel this may be a 
> >> virtual
> >> diff --git a/tools/libxc/xc_dom_boot.c b/tools/libxc/xc_dom_boot.c
> >> index 8d4fefa..7cb9e40 100644
> >> --- a/tools/libxc/xc_dom_boot.c
> >> +++ b/tools/libxc/xc_dom_boot.c
> >> @@ -419,6 +419,20 @@ int xc_dom_gnttab_hvm_seed(xc_interface *xch, domid_t 
> >> domid,
> >>  
> >>  int xc_dom_gnttab_init(struct xc_dom_image *dom)
> >>  {
> >> +    int rc;
> >> +
> >> +    if ( dom->max_grant_frames == -1 || dom->max_maptrack_frames == -1 )
> > Not sure if compilers will complain about comparing an unsigned type
> > against a signed one. Maybe better to use ~0u?
> 
> The conversion of -1 to unsigned int is well defined.  I think this is
> fine as is.  Wei, as maintainer, whats your say?
> 

That's fine.

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

 


Rackspace

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