WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH] fix memory exchange hypercall.

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH] fix memory exchange hypercall.
From: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
Date: Thu, 15 Mar 2007 18:53:05 +0900
Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Thu, 15 Mar 2007 02:53:02 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.4.2.1i
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

Attachment: 14378_946572694e6b_ia64_memory_exchange_fix.patch
Description: Text Data

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel