|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-devel
[Xen-devel] [PATCH] fix memory exchange hypercall.
 
This patch fixes memory exchange hypercall which has been broken on ia64.
Especially the error recovery path.
Dropping _PGC_allocated bit and guest_physmap_remove_page() must be done
before stealing page because The ia64 p2m table increments page
refcount and guest_physmap_remove_page() behaves depending on _PGC_allocated.
So far there is work around code in ia64, however the c/s 13366:ed73ff8440d8
of xen-unstable.hg revealed that the work around is broken.
The c/s passes dma bit argument of memory exchange so that it results
in hypercall error.
On x86 platform, memory_exchange() is used only for paravirtualized domain
and guest_physmap_remove_page() and guest_phsymap_add_page() are nop for
paravirtualized domain. So reordering them is safe.
-- 
yamahata
 
 
14378_946572694e6b_ia64_memory_exchange_fix.patch 
Description: Text Data 
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
 
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread>
 |  
- [Xen-devel] [PATCH] fix memory exchange hypercall.,
Isaku Yamahata <=
 
 
 |  
  
 | 
    | 
  
  
    |   | 
    |