]> git.baikalelectronics.ru Git - kernel.git/commit
mm: page_isolation: use compound_nr() correctly in isolate_single_pageblock()
authorZi Yan <ziy@nvidia.com>
Tue, 31 May 2022 02:44:50 +0000 (22:44 -0400)
committerakpm <akpm@linux-foundation.org>
Wed, 1 Jun 2022 22:57:16 +0000 (15:57 -0700)
commit4402cb08ae7ad88bffe1077700417ec4b31e9b44
tree052f20809627f139d0588a42a275b2a8d8e9709e
parent48507aa2280514a23edfecb84211735399d8179f
mm: page_isolation: use compound_nr() correctly in isolate_single_pageblock()

When compound_nr(page) was used, page was not guaranteed to be the head of
the compound page and it could cause an infinite loop.  Fix it by calling
it on the head page.

Link: https://lkml.kernel.org/r/20220531024450.2498431-1-zi.yan@sent.com
Fixes: fb8ff9519e2e ("mm: make alloc_contig_range work at pageblock granularity")
Signed-off-by: Zi Yan <ziy@nvidia.com>
Reported-by: Anshuman Khandual <anshuman.khandual@arm.com>
Link: https://lore.kernel.org/linux-mm/20220530115027.123341-1-anshuman.khandual@arm.com/
Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>
Reviewed-by: Miaohe Lin <linmiaohe@huawei.com>
Reviewed-by: Oscar Salvador <osalvador@suse.de>
Acked-by: Muchun Song <songmuchun@bytedance.com>
Cc: David Hildenbrand <david@redhat.com>
Cc: Qian Cai <quic_qiancai@quicinc.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: Eric Ren <renzhengeek@gmail.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/page_isolation.c