summaryrefslogtreecommitdiffstats
path: root/drivers/xen
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/xen')
-rw-r--r--drivers/xen/gntdev.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
index 888d76307d59..a2ea5335e152 100644
--- a/drivers/xen/gntdev.c
+++ b/drivers/xen/gntdev.c
@@ -209,8 +209,8 @@ static int find_grant_ptes(pte_t *pte, pgtable_t token,
u64 pte_maddr;
BUG_ON(pgnr >= map->count);
- pte_maddr = (u64)pfn_to_mfn(page_to_pfn(token)) << PAGE_SHIFT;
- pte_maddr += (unsigned long)pte & ~PAGE_MASK;
+ pte_maddr = arbitrary_virt_to_machine(pte).maddr;
+
gnttab_set_map_op(&map->map_ops[pgnr], pte_maddr,
GNTMAP_contains_pte | map->flags,
map->grants[pgnr].ref,