Re: [PATCH 2/2] hugetlbfs: add swap entry check infollow_hugetlb_page()

From: Naoya Horiguchi
Date: Fri Mar 29 2013 - 13:25:17 EST


Hi,

On Fri, Mar 29, 2013 at 02:57:30PM +0100, Michal Hocko wrote:
> On Thu 28-03-13 11:42:38, Naoya Horiguchi wrote:
> [...]
> > @@ -2968,7 +2968,8 @@ long follow_hugetlb_page(struct mm_struct *mm, struct vm_area_struct *vma,
> > * first, for the page indexing below to work.
> > */
> > pte = huge_pte_offset(mm, vaddr & huge_page_mask(h));
> > - absent = !pte || huge_pte_none(huge_ptep_get(pte));
> > + absent = !pte || huge_pte_none(huge_ptep_get(pte)) ||
> > + is_swap_pte(huge_ptep_get(pte));
>
> is_swap_pte doesn't seem right. Shouldn't you use is_hugetlb_entry_hwpoisoned
> instead?

I tested only hwpoisoned hugepage, but the same can happen for hugepages
under migration. So I intended to filter out all types of swap entries.
The local variable 'absent' seems to mean whether data on the address
is immediately available, so swap type entry isn't included in it.

Thanks,
Naoya
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/