From: Julien Grall Date: Thu, 5 Oct 2017 17:42:16 +0000 (+0100) Subject: xen/x86: mem_sharing: Use copy_domain_page in __mem_sharing_unshare_page X-Git-Tag: archive/raspbian/4.11.1-1+rpi1~1^2~66^2~1217 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=e6cccc721c58c5e260331050b68bdbd1b36c226d;p=xen.git xen/x86: mem_sharing: Use copy_domain_page in __mem_sharing_unshare_page The function __mem_sharing_unshare_page contains an open-code version of copy_domain_page. Use the function to simplify a bit the code. At the same time replace _mfn(__page_to_mfn(...)) by page_to_mfn(...) given that the file given already provides a typesafe version of page_to_mfn. Signed-off-by: Julien Grall Reviewed-by: Andrew Cooper Acked-by: Tamas K Lengyel --- diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c index b856028c02..6f4be95515 100644 --- a/xen/arch/x86/mm/mem_sharing.c +++ b/xen/arch/x86/mm/mem_sharing.c @@ -1106,7 +1106,6 @@ int __mem_sharing_unshare_page(struct domain *d, p2m_type_t p2mt; mfn_t mfn; struct page_info *page, *old_page; - void *s, *t; int last_gfn; gfn_info_t *gfn_info = NULL; @@ -1185,11 +1184,7 @@ int __mem_sharing_unshare_page(struct domain *d, return -ENOMEM; } - s = map_domain_page(_mfn(__page_to_mfn(old_page))); - t = map_domain_page(_mfn(__page_to_mfn(page))); - memcpy(t, s, PAGE_SIZE); - unmap_domain_page(s); - unmap_domain_page(t); + copy_domain_page(page_to_mfn(page), page_to_mfn(old_page)); BUG_ON(set_shared_p2m_entry(d, gfn, page_to_mfn(page))); mem_sharing_gfn_destroy(old_page, d, gfn_info);