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

Re: [Xen-devel] [PATCH] xen: Simplify the space of spaces supported by XENMEM_add_to_physmap(_range)



On Tue, 22 Jan 2013, Ian Campbell wrote:
> XENMAPSPACE_gmfn_foreign is not supported by XENMEM_add_to_physmap.
> 
> Although in theory XENMEM_add_to_physmap_range could support
> XENMAPSPACE_gmfn_range this is no different to
> XENMAPSPACE_gmfn in the context of the ranged hypercall so disallow it
> to avoid any confusion.
> 
> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

Acked-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>

>  xen/arch/arm/mm.c           |    6 +++++-
>  xen/include/public/memory.h |    6 ++++--
>  2 files changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> index eb5213e..faa9742 100644
> --- a/xen/arch/arm/mm.c
> +++ b/xen/arch/arm/mm.c
> @@ -648,7 +648,7 @@ long arch_memory_op(int op, XEN_GUEST_HANDLE_PARAM(void) 
> arg)
>          if ( copy_from_guest(&xatp, arg, 1) )
>              return -EFAULT;
>  
> -        /* This one is only supported by add_to_physmap_range */
> +        /* Foreign mapping is only supported by add_to_physmap_range */
>          if ( xatp.space == XENMAPSPACE_gmfn_foreign )
>              return -EINVAL;
>  
> @@ -679,6 +679,10 @@ long arch_memory_op(int op, XEN_GUEST_HANDLE_PARAM(void) 
> arg)
>          if ( copy_from_guest(&xatpr, arg, 1) )
>              return -EFAULT;
>  
> +        /* This mapspace is redundant for this hypercall */
> +        if ( xatpr.space == XENMAPSPACE_gmfn_range )
> +            return -EINVAL;
> +
>          rc = rcu_lock_target_domain_by_id(xatpr.domid, &d);
>          if ( rc != 0 )
>              return rc;
> diff --git a/xen/include/public/memory.h b/xen/include/public/memory.h
> index 62acabd..a248c07 100644
> --- a/xen/include/public/memory.h
> +++ b/xen/include/public/memory.h
> @@ -203,8 +203,10 @@ DEFINE_XEN_GUEST_HANDLE(xen_machphys_mapping_t);
>  #define XENMAPSPACE_shared_info  0 /* shared info page */
>  #define XENMAPSPACE_grant_table  1 /* grant table page */
>  #define XENMAPSPACE_gmfn         2 /* GMFN */
> -#define XENMAPSPACE_gmfn_range   3 /* GMFN range */
> -#define XENMAPSPACE_gmfn_foreign 4 /* GMFN from another dom */
> +#define XENMAPSPACE_gmfn_range   3 /* GMFN range, XENMEM_add_to_physmap 
> only. */
> +#define XENMAPSPACE_gmfn_foreign 4 /* GMFN from another dom,
> +                                    * XENMEM_add_to_physmap_range only.
> +                                    */
>  /* ` } */
>  
>  /*
> -- 
> 1.7.9.1
> 

_______________________________________________
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®.