From: Julien Grall Date: Tue, 17 Dec 2013 16:27:58 +0000 (+0000) Subject: xen/arm: grant-table: Support read-only mapping X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~5729 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=9383b2cc52629d77879952fda712463871ea2fe7;p=xen.git xen/arm: grant-table: Support read-only mapping Signed-off-by: Julien Grall Acked-by: Ian Campbell --- diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 8250e65d02..3d0b8540fd 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -1306,19 +1306,17 @@ int create_grant_host_mapping(unsigned long addr, unsigned long frame, unsigned int flags, unsigned int cache_flags) { int rc; + p2m_type_t t = p2m_grant_map_rw; if ( cache_flags || (flags & ~GNTMAP_readonly) != GNTMAP_host_map ) return GNTST_general_error; - /* XXX: read only mappings */ if ( flags & GNTMAP_readonly ) - { - gdprintk(XENLOG_WARNING, "read only mappings not implemented yet\n"); - return GNTST_general_error; - } + t = p2m_grant_map_ro; + + rc = guest_physmap_add_entry(current->domain, addr >> PAGE_SHIFT, + frame, 0, t); - rc = guest_physmap_add_page(current->domain, - addr >> PAGE_SHIFT, frame, 0); if ( rc ) return GNTST_general_error; else