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

Re: [Xen-devel] [PATCH] public: there's no MMUEXT_SET_FOREIGNDOM





On 09/06/17 14:20, Julien Grall wrote:
Hi Jan,

On 08/06/17 16:19, Jan Beulich wrote:
Correct respective comments.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
---
MMUEXT_{CLEAR,COPY}_PAGE in fact also allow to be invoked on DOMID_IO
owned pages at present. I've intentionally not added this to the text,
as I'm not sure we really mean to allow this. If we do, I think the
operation should also be allowed for MMIO pages not happening to have
an associated struct page_info.

--- a/xen/include/public/xen.h
+++ b/xen/include/public/xen.h
@@ -550,16 +550,19 @@ DEFINE_XEN_GUEST_HANDLE(mmuext_op_t);
  * is useful to ensure that no mappings to the OS's own heap are
accidentally
  * installed. (e.g., in Linux this could cause havoc as reference counts
  * aren't adjusted on the I/O-mapping code path).
- * This only makes sense in MMUEXT_SET_FOREIGNDOM, but in that
context can
- * be specified by any calling domain.
+ * This only makes sense as HYPERVISOR_mmu_update()'s and
+ * HYPERVISOR_update_va_mapping_otherdomain()'s "foreigndom"
argument. For
+ * HYPERVISOR_mmu_update() context it can be specified by any calling
domain,
+ * otherwise it's only permitted if the caller is privileged.
  */
 #define DOMID_IO             xen_mk_uint(0x7FF1)

 /*
  * DOMID_XEN is used to allow privileged domains to map restricted
parts of
  * Xen's heap space (e.g., the machine_to_phys table).
- * This only makes sense in MMUEXT_SET_FOREIGNDOM, and is only
permitted if
- * the caller is privileged.
+ * This only makes sense as HYPERVISOR_mmu_update()'s,
HYPERVISOR_mmuext_op()'s,
+ * or HYPERVISOR_update_va_mapping_otherdomain()'s "foreigndom"
argument, and is
+ * only permitted if the caller is privileged.

DOMID_XEN is used on ARM for mapping Xen buffer (e.g trace) using

s/is/will be/ as the series has not yet been merged (see [1]). But to clarify, xentrace is currently call xc_map_foreign_pages which will turned into a physmap hypercall for ARM and x86 HVM guests.

physmap hypercall with XENMAPSPACE_foreign_gmfn_foreign.

Cheers,

[1] https://patchwork.kernel.org/patch/8604811/

--
Julien Grall

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