[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] Re: [PATCH] Support swap a page from user spacetools -- Was RE: [RFC][PATCH] Basic support for page offline



>>> "Jiang, Yunhong" <yunhong.jiang@xxxxxxxxx> 20.03.09 03:52 >>>
>The method to exchange the offline pending page for PV domain is:
>1) Suspend the guest.
>2) Allocate a new page for the guest
>3) Get a copy for the content
>4) User space tools will scan all page table page to see if any reference to 
>the offending page, if yes, then it will hypercall to Xen
>to replace the entry to point to the new one. (Through the mmu_*ops)
>5) After update all page tables, user space tools will try to exchange the old 
>page with the new page. If the new mfn has no
>reference anymore (i.e. count_info & count_mask = 1), the exchange will update 
>the m2p and return success, otherwise it will
>return fail. (the page may be referenced by other domain, like grant table or 
>foreign mapped).

Hmm, if you consider the possibility of this case, then you should also 
consider the possibility of a page still being accessible by another domain at 
the point where you copy its content, but no longer in use when you do the 
exchange (which means that the content may have changed between the two points 
in time).

>6) If step 5 is success, user space tools will update the content of the new 
>page and the p2m table, else it will try to undo step 4
>to revert page table changes.
>7) Resume the guest.

Jan


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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.