aboutsummaryrefslogtreecommitdiffstats
path: root/xen
diff options
context:
space:
mode:
authorAndres Lagar-Cavilla <andres@lagarcavilla.org>2012-01-26 13:21:27 +0000
committerAndres Lagar-Cavilla <andres@lagarcavilla.org>2012-01-26 13:21:27 +0000
commit91279d9f230d7314e212a0e3aa0cee874edb6a3d (patch)
treea9ba425f62f44176f013f80698722a9ec2993c3e /xen
parent1c5158f2a687ef7705da412b370a5d1e3d5837a9 (diff)
downloadxen-91279d9f230d7314e212a0e3aa0cee874edb6a3d.tar.gz
xen-91279d9f230d7314e212a0e3aa0cee874edb6a3d.tar.bz2
xen-91279d9f230d7314e212a0e3aa0cee874edb6a3d.zip
x86/mm: Properly account for paged out pages
If we hit the page after nominate but before paging it out, don't decrement the domain count of paged out pages. Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Tim Deegan <tim@xen.org>
Diffstat (limited to 'xen')
-rw-r--r--xen/arch/x86/mm/p2m.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/xen/arch/x86/mm/p2m.c b/xen/arch/x86/mm/p2m.c
index 3080d2c1fb..844766a5e5 100644
--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -1041,7 +1041,8 @@ int p2m_mem_paging_prep(struct domain *d, unsigned long gfn, uint64_t buffer)
p2m_ram_rw, a);
set_gpfn_from_mfn(mfn_x(mfn), gfn);
- atomic_dec(&d->paged_pages);
+ if ( !page_extant )
+ atomic_dec(&d->paged_pages);
ret = 0;