|
@@ -634,6 +634,7 @@ static int pagemap_pte_range(pmd_t *pmd, unsigned long addr, unsigned long end,
|
|
|
return err;
|
|
|
}
|
|
|
|
|
|
+#ifdef CONFIG_HUGETLB_PAGE
|
|
|
static u64 huge_pte_to_pagemap_entry(pte_t pte, int offset)
|
|
|
{
|
|
|
u64 pme = 0;
|
|
@@ -664,6 +665,7 @@ static int pagemap_hugetlb_range(pte_t *pte, unsigned long hmask,
|
|
|
|
|
|
return err;
|
|
|
}
|
|
|
+#endif /* HUGETLB_PAGE */
|
|
|
|
|
|
/*
|
|
|
* /proc/pid/pagemap - an array mapping virtual pages to pfns
|
|
@@ -733,7 +735,9 @@ static ssize_t pagemap_read(struct file *file, char __user *buf,
|
|
|
|
|
|
pagemap_walk.pmd_entry = pagemap_pte_range;
|
|
|
pagemap_walk.pte_hole = pagemap_pte_hole;
|
|
|
+#ifdef CONFIG_HUGETLB_PAGE
|
|
|
pagemap_walk.hugetlb_entry = pagemap_hugetlb_range;
|
|
|
+#endif
|
|
|
pagemap_walk.mm = mm;
|
|
|
pagemap_walk.private = ±
|
|
|
|