From: Luiz Capitulino <lcapitul...@redhat.com>

commit a7407a27c2bba3711d272d72d2d63ea147a929df upstream

Hugepages pages never get the PG_reserved bit set, so don't clear it.

However, note that if the bit gets mistakenly set free_pages_check() will
catch it.

Signed-off-by: Luiz Capitulino <lcapitul...@redhat.com>
Reviewed-by: Davidlohr Bueso <davidl...@hp.com>
Acked-by: Kirill A. Shutemov <kirill.shute...@linux.intel.com>
Reviewed-by: Zhang Yanfei <zhangyan...@cn.fujitsu.com>
Cc: Andrea Arcangeli <aarca...@redhat.com>
Cc: David Rientjes <rient...@google.com>
Cc: Marcelo Tosatti <mtosa...@redhat.com>
Cc: Naoya Horiguchi <n-horigu...@ah.jp.nec.com>
Cc: Rik van Riel <r...@redhat.com>
Cc: Yasuaki Ishimatsu <isimatu.yasu...@jp.fujitsu.com>
Cc: Yinghai Lu <ying...@kernel.org>
Signed-off-by: Andrew Morton <a...@linux-foundation.org>
Signed-off-by: Linus Torvalds <torva...@linux-foundation.org>
Signed-off-by: Yang Shi <yang....@windriver.com>
---
 mm/hugetlb.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index 0225419..acd9760 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -617,8 +617,8 @@ static void update_and_free_page(struct hstate *h, struct 
page *page)
        for (i = 0; i < pages_per_huge_page(h); i++) {
                page[i].flags &= ~(1 << PG_locked | 1 << PG_error |
                                1 << PG_referenced | 1 << PG_dirty |
-                               1 << PG_active | 1 << PG_reserved |
-                               1 << PG_private | 1 << PG_writeback);
+                               1 << PG_active | 1 << PG_private |
+                               1 << PG_writeback);
        }
        VM_BUG_ON_PAGE(hugetlb_cgroup_from_page(page), page);
        set_compound_page_dtor(page, NULL);
-- 
2.0.2

-- 
_______________________________________________
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto

Reply via email to