[xen master] x86/paging: don't unconditionally BUG() on finding SHARED_M2P_ENTRY

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[xen master] x86/paging: don't unconditionally BUG() on finding SHARED_M2P_ENTRY

patchbot
commit b4d0218cff66b7eaa9c9b8dc9bd71e7b089b016d
Author:     Jan Beulich <[hidden email]>
AuthorDate: Tue Dec 12 14:30:17 2017 +0100
Commit:     Jan Beulich <[hidden email]>
CommitDate: Tue Dec 12 14:30:17 2017 +0100

    x86/paging: don't unconditionally BUG() on finding SHARED_M2P_ENTRY
   
    PV guests can fully control the values written into the P2M.
   
    This is XSA-251.
   
    Signed-off-by: Jan Beulich <[hidden email]>
    Reviewed-by: Andrew Cooper <[hidden email]>
---
 xen/arch/x86/mm/paging.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/mm/paging.c b/xen/arch/x86/mm/paging.c
index 1e2c9ba..755a8f8 100644
--- a/xen/arch/x86/mm/paging.c
+++ b/xen/arch/x86/mm/paging.c
@@ -274,7 +274,7 @@ void paging_mark_pfn_dirty(struct domain *d, pfn_t pfn)
         return;
 
     /* Shared MFNs should NEVER be marked dirty */
-    BUG_ON(SHARED_M2P(pfn_x(pfn)));
+    BUG_ON(paging_mode_translate(d) && SHARED_M2P(pfn_x(pfn)));
 
     /*
      * Values with the MSB set denote MFNs that aren't really part of the
--
generated by git-patchbot for /home/xen/git/xen.git#master

_______________________________________________
Xen-changelog mailing list
[hidden email]
https://lists.xenproject.org/xen-changelog