|
@@ -1568,8 +1568,7 @@ bool madvise_free_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma,
|
|
deactivate_page(page);
|
|
deactivate_page(page);
|
|
|
|
|
|
if (pmd_young(orig_pmd) || pmd_dirty(orig_pmd)) {
|
|
if (pmd_young(orig_pmd) || pmd_dirty(orig_pmd)) {
|
|
- orig_pmd = pmdp_huge_get_and_clear_full(tlb->mm, addr, pmd,
|
|
|
|
- tlb->fullmm);
|
|
|
|
|
|
+ pmdp_invalidate(vma, addr, pmd);
|
|
orig_pmd = pmd_mkold(orig_pmd);
|
|
orig_pmd = pmd_mkold(orig_pmd);
|
|
orig_pmd = pmd_mkclean(orig_pmd);
|
|
orig_pmd = pmd_mkclean(orig_pmd);
|
|
|
|
|