aboutsummaryrefslogtreecommitdiffstats
path: root/tools/xenpaging/xenpaging.h
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2009-12-17 06:27:55 +0000
committerKeir Fraser <keir.fraser@citrix.com>2009-12-17 06:27:55 +0000
commitb41ecc03e9d1527905dc955b14ada0e8c7171f52 (patch)
treeb6aaa85792a97d60b19e0b307e6b9a11371e8d15 /tools/xenpaging/xenpaging.h
parentf2a7d5963e57679977397a44294e421a89693eb1 (diff)
downloadxen-b41ecc03e9d1527905dc955b14ada0e8c7171f52.tar.gz
xen-b41ecc03e9d1527905dc955b14ada0e8c7171f52.tar.bz2
xen-b41ecc03e9d1527905dc955b14ada0e8c7171f52.zip
Add memory paging support for MMU updates (mapping a domain's memory).
If Domain-0 tries to map a page that has been paged out, then propagate an error so that it knows to try again. If the page is paged out, request that it be paged back in. If the page is in the process of being paged in, then just keeping returning the error until it is paged back in. This requires the co-operation of the Domain-0 kernel's privcmd mmap functions. The kernel can't simply spin waiting for the page, as this will cause a dead-lock (since the paging tool lives in Domain-0 user-space and if it's spinning in kernel space, it will never return to user-space to allow the page to be paged back in). There is a complimentary Linux patch which sees ENOENT, which is not returned by any other part of this code, and marks the PFN of that paged specially to indicate it was paged out (much like what it does with PFNs that are within the range of a domain's memory but are not presently mapped). Signed-off-by: Patrick Colp <Patrick.Colp@citrix.com>
Diffstat (limited to 'tools/xenpaging/xenpaging.h')
0 files changed, 0 insertions, 0 deletions