* [PATCH] xen: Simplify the space of spaces supported by XENMEM_add_to_physmap(_range)
@ 2013-01-22 11:39 Ian Campbell
2013-01-22 12:17 ` Stefano Stabellini
2013-01-22 20:04 ` Keir Fraser
0 siblings, 2 replies; 4+ messages in thread
From: Ian Campbell @ 2013-01-22 11:39 UTC (permalink / raw)
To: xen-devel; +Cc: tim, keir, stefano.stabellini, Ian Campbell, konrad.wilk
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@citrix.com>
---
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
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] xen: Simplify the space of spaces supported by XENMEM_add_to_physmap(_range)
2013-01-22 11:39 [PATCH] xen: Simplify the space of spaces supported by XENMEM_add_to_physmap(_range) Ian Campbell
@ 2013-01-22 12:17 ` Stefano Stabellini
2013-01-22 20:04 ` Keir Fraser
1 sibling, 0 replies; 4+ messages in thread
From: Stefano Stabellini @ 2013-01-22 12:17 UTC (permalink / raw)
To: Ian Campbell
Cc: Keir (Xen.org), Stefano Stabellini, Tim (Xen.org),
konrad.wilk, xen-devel
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@citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> 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
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] xen: Simplify the space of spaces supported by XENMEM_add_to_physmap(_range)
2013-01-22 11:39 [PATCH] xen: Simplify the space of spaces supported by XENMEM_add_to_physmap(_range) Ian Campbell
2013-01-22 12:17 ` Stefano Stabellini
@ 2013-01-22 20:04 ` Keir Fraser
2013-01-24 13:18 ` Ian Campbell
1 sibling, 1 reply; 4+ messages in thread
From: Keir Fraser @ 2013-01-22 20:04 UTC (permalink / raw)
To: Ian Campbell, xen-devel; +Cc: tim, stefano.stabellini, Konrad Rzeszutek Wilk
On 22/01/2013 11:39, "Ian Campbell" <ian.campbell@citrix.com> 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@citrix.com>
Acked-by: Keir Fraser <keir@xen.org>
> ---
> 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.
> + */
> /* ` } */
>
> /*
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] xen: Simplify the space of spaces supported by XENMEM_add_to_physmap(_range)
2013-01-22 20:04 ` Keir Fraser
@ 2013-01-24 13:18 ` Ian Campbell
0 siblings, 0 replies; 4+ messages in thread
From: Ian Campbell @ 2013-01-24 13:18 UTC (permalink / raw)
To: Keir Fraser
Cc: Stefano Stabellini, Tim (Xen.org), Konrad Rzeszutek Wilk, xen-devel
On Tue, 2013-01-22 at 20:04 +0000, Keir Fraser wrote:
> On 22/01/2013 11:39, "Ian Campbell" <ian.campbell@citrix.com> 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@citrix.com>
>
> Acked-by: Keir Fraser <keir@xen.org>
Applied, thanks.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-01-24 13:18 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-01-22 11:39 [PATCH] xen: Simplify the space of spaces supported by XENMEM_add_to_physmap(_range) Ian Campbell
2013-01-22 12:17 ` Stefano Stabellini
2013-01-22 20:04 ` Keir Fraser
2013-01-24 13:18 ` Ian Campbell
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.