diff --git a/[refs] b/[refs] index d09e9d7a33a3..bccba8909323 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 34845636a184f3be91a531098192592cbe6db587 +refs/heads/master: b0365c8d0cb6e79eb5f21418ae61ab511f31b575 diff --git a/trunk/mm/hugetlb.c b/trunk/mm/hugetlb.c index 73f17c0293c0..2316840b337a 100644 --- a/trunk/mm/hugetlb.c +++ b/trunk/mm/hugetlb.c @@ -901,7 +901,6 @@ static int gather_surplus_pages(struct hstate *h, int delta) h->resv_huge_pages += delta; ret = 0; - spin_unlock(&hugetlb_lock); /* Free the needed pages to the hugetlb pool */ list_for_each_entry_safe(page, tmp, &surplus_list, lru) { if ((--needed) < 0) @@ -915,6 +914,7 @@ static int gather_surplus_pages(struct hstate *h, int delta) VM_BUG_ON(page_count(page)); enqueue_huge_page(h, page); } + spin_unlock(&hugetlb_lock); /* Free unnecessary surplus pages to the buddy allocator */ free: