Lines Matching refs:hpage
784 struct page *hpage = compound_head(p); in me_huge_page() local
787 if (!PageHuge(hpage)) in me_huge_page()
790 mapping = page_mapping(hpage); in me_huge_page()
792 res = truncate_error_page(hpage, pfn, mapping); in me_huge_page()
794 unlock_page(hpage); in me_huge_page()
800 if (PageAnon(hpage)) in me_huge_page()
801 put_page(hpage); in me_huge_page()
804 lock_page(hpage); in me_huge_page()
971 struct page *hpage = *hpagep; in hwpoison_user_mappings() local
972 bool mlocked = PageMlocked(hpage); in hwpoison_user_mappings()
980 if (!(PageLRU(hpage) || PageHuge(p))) in hwpoison_user_mappings()
987 if (!page_mapped(hpage)) in hwpoison_user_mappings()
1007 mapping = page_mapping(hpage); in hwpoison_user_mappings()
1008 if (!(flags & MF_MUST_KILL) && !PageDirty(hpage) && mapping && in hwpoison_user_mappings()
1010 if (page_mkclean(hpage)) { in hwpoison_user_mappings()
1011 SetPageDirty(hpage); in hwpoison_user_mappings()
1029 collect_procs(hpage, &tokill, flags & MF_ACTION_REQUIRED); in hwpoison_user_mappings()
1031 unmap_success = try_to_unmap(hpage, ttu); in hwpoison_user_mappings()
1034 pfn, page_mapcount(hpage)); in hwpoison_user_mappings()
1041 shake_page(hpage, 0); in hwpoison_user_mappings()
1053 forcekill = PageDirty(hpage) || (flags & MF_MUST_KILL); in hwpoison_user_mappings()
1251 struct page *hpage; in memory_failure() local
1279 orig_head = hpage = compound_head(p); in memory_failure()
1303 if (PageTransHuge(hpage)) { in memory_failure()
1320 hpage = compound_head(p); in memory_failure()
1361 page_flags = hpage->flags; in memory_failure()
1399 if (!hwpoison_user_mappings(p, pfn, flags, &hpage)) { in memory_failure()
1685 struct page *hpage = compound_head(page); in soft_offline_huge_page() local
1692 lock_page(hpage); in soft_offline_huge_page()
1693 if (PageHWPoison(hpage)) { in soft_offline_huge_page()
1694 unlock_page(hpage); in soft_offline_huge_page()
1695 put_hwpoison_page(hpage); in soft_offline_huge_page()
1699 unlock_page(hpage); in soft_offline_huge_page()
1701 ret = isolate_huge_page(hpage, &pagelist); in soft_offline_huge_page()
1706 put_hwpoison_page(hpage); in soft_offline_huge_page()
1822 struct page *hpage = compound_head(page); in soft_offline_in_use_page() local
1824 if (!PageHuge(page) && PageTransHuge(hpage)) { in soft_offline_in_use_page()
1825 lock_page(hpage); in soft_offline_in_use_page()
1826 if (!PageAnon(hpage) || unlikely(split_huge_page(hpage))) { in soft_offline_in_use_page()
1827 unlock_page(hpage); in soft_offline_in_use_page()
1828 if (!PageAnon(hpage)) in soft_offline_in_use_page()
1832 put_hwpoison_page(hpage); in soft_offline_in_use_page()
1835 unlock_page(hpage); in soft_offline_in_use_page()
1837 put_hwpoison_page(hpage); in soft_offline_in_use_page()