diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index f9ea1e5197b4fc2b25863dfb7b459514fcb137e5..f5fb53fdfa02d2da4ad71e0a21552ecab1235fe7 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -2010,6 +2010,7 @@ struct page *alloc_huge_page_vma(struct hstate *h, struct vm_area_struct *vma,
  * of size 'delta'.
  */
 static int gather_surplus_pages(struct hstate *h, int delta)
+	__must_hold(&hugetlb_lock)
 {
 	struct list_head surplus_list;
 	struct page *page, *tmp;