From: Hui Su Date: Tue, 15 Dec 2020 03:11:55 +0000 (-0800) Subject: mm/hugetlb.c: just use put_page_testzero() instead of page_count() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=e5dfacebe4a47fc9e4dd25246ed3599d60122e38;p=linux.git mm/hugetlb.c: just use put_page_testzero() instead of page_count() We test the page reference count is zero or not here, it can be a bug here if page refercence count is not zero. So we can just use put_page_testzero() instead of page_count(). Link: https://lkml.kernel.org/r/20201007170949.GA6416@rlk Signed-off-by: Hui Su Cc: Mike Kravetz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 4b809cc7a3fda..987d4b57ab0d7 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -2014,8 +2014,7 @@ retry: * This page is now managed by the hugetlb allocator and has * no users -- drop the buddy allocator's reference. */ - put_page_testzero(page); - VM_BUG_ON_PAGE(page_count(page), page); + VM_BUG_ON_PAGE(!put_page_testzero(page), page); enqueue_huge_page(h, page); } free: