guest_remove_page() ought to use get_gfn_query() to look up the
current state of the gfn. Otherwise it might populate or unshare
the gfn just before dropping it.
Signed-off-by: Tim Deegan <tim@xen.org>
Committed-by: Tim Deegan <tim@xen.org>
unsigned long mfn;
#ifdef CONFIG_X86
- mfn = mfn_x(get_gfn(d, gmfn, &p2mt));
+ mfn = mfn_x(get_gfn_query(d, gmfn, &p2mt));
if ( unlikely(p2m_is_paging(p2mt)) )
{
guest_physmap_remove_page(d, gmfn, mfn, 0);