hugetlb: move refcounting in hugepage allocation inside hugetlb_lock
Currently alloc_huge_page() raises page refcount outside hugetlb_lock. but it causes race when dequeue_hwpoison_huge_page() runs concurrently with alloc_huge_page(). To avoid it, this patch moves set_page_refcounted() in hugetlb_lock. Signed-off-by:Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> Signed-off-by:
Wu Fengguang <fengguang.wu@intel.com> Acked-by:
Mel Gorman <mel@csn.ul.ie> Reviewed-by:
Christoph Lameter <cl@linux.com> Signed-off-by:
Andi Kleen <ak@linux.intel.com>
Showing
Please register or sign in to comment