>>> On 15.08.17 at 14:30, <andrew.coop...@citrix.com> wrote: > Remove the opencoded rcu_lock_domain_by_any_id(). Drop the PIN_FAIL()s and > return GNTST_* values directly. > > Signed-off-by: Andrew Cooper <andrew.coop...@citrix.com>
Reviewed-by: Jan Beulich <jbeul...@suse.com> with one optional extra request: > --- a/xen/common/grant_table.c > +++ b/xen/common/grant_table.c > @@ -2390,28 +2390,21 @@ struct gnttab_copy_buf { > bool_t have_type; > }; > > -static int gnttab_copy_lock_domain(domid_t domid, unsigned int gref_flag, > +static int gnttab_copy_lock_domain(domid_t domid, bool is_gref, > struct gnttab_copy_buf *buf) > { > - int rc; > + /* Only DOMID_SELF may reference via frame. */ > + if ( domid != DOMID_SELF && !is_gref ) > + return GNTST_permission_denied; > > - if ( domid != DOMID_SELF && !gref_flag ) > - PIN_FAIL(out, GNTST_permission_denied, > - "only allow copy-by-mfn for DOMID_SELF.\n"); > + buf->domain = rcu_lock_domain_by_any_id(domid); > > - if ( domid == DOMID_SELF ) > - buf->domain = rcu_lock_current_domain(); > - else > - { > - buf->domain = rcu_lock_domain_by_id(domid); > - if ( buf->domain == NULL ) > - PIN_FAIL(out, GNTST_bad_domain, "couldn't find %d\n", domid); > - } > + if ( buf->domain == NULL ) Use ! here? Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel