|
|
@@ -756,32 +756,6 @@ check:
|
|
|
return NULL;
|
|
|
}
|
|
|
|
|
|
-/**
|
|
|
- * page_mapped_in_vma - check whether a page is really mapped in a VMA
|
|
|
- * @page: the page to test
|
|
|
- * @vma: the VMA to test
|
|
|
- *
|
|
|
- * Returns 1 if the page is mapped into the page tables of the VMA, 0
|
|
|
- * if the page is not mapped into the page tables of this VMA. Only
|
|
|
- * valid for normal file or anonymous VMAs.
|
|
|
- */
|
|
|
-int page_mapped_in_vma(struct page *page, struct vm_area_struct *vma)
|
|
|
-{
|
|
|
- unsigned long address;
|
|
|
- pte_t *pte;
|
|
|
- spinlock_t *ptl;
|
|
|
-
|
|
|
- address = __vma_address(page, vma);
|
|
|
- if (unlikely(address < vma->vm_start || address >= vma->vm_end))
|
|
|
- return 0;
|
|
|
- pte = page_check_address(page, vma->vm_mm, address, &ptl, 1);
|
|
|
- if (!pte) /* the page is not in this mm */
|
|
|
- return 0;
|
|
|
- pte_unmap_unlock(pte, ptl);
|
|
|
-
|
|
|
- return 1;
|
|
|
-}
|
|
|
-
|
|
|
#ifdef CONFIG_TRANSPARENT_HUGEPAGE
|
|
|
/*
|
|
|
* Check that @page is mapped at @address into @mm. In contrast to
|