Subject: Re: [next] mm: libhugetlbfs: WARNING: at mm/page_alloc.c:5368 __alloc_pages

From: Qian Cai <[email-masked]>
Date: Fri, 29 Apr 2022 12:03:17 -0400

On Fri, Apr 29, 2022 at 04:50:25PM +0530, Naresh Kamboju wrote:
> Following kernel warning notices on Linux next-20220427 till date next-20220429
> on qemu_arm64 and arm64 devices.
> 
> While testing libhugetlbfs test suite and ltp mm and hugetlb.
> 
> Reported-by: Linux Kernel Functional Testing <[email-masked]>
> 
> Test log:
> ----------
> truncate_above_4GB (2M: 64): PASS
> brk_near_huge (2M: 64): brk_near_huge: malloc.c:2401: sysmalloc:
> Assertion `(old_top == initial_top (av) && old_size == 0) ||
> ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) &&
> ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
> [   15.685019] audit: type=1701 audit(1651222753.772:25):
> auid=4294967295 uid=0 gid=0 ses=4294967295 pid=454
> comm=\"brk_near_huge\"
> exe=\"/usr/lib/libhugetlbfs/tests/obj64/brk_near_huge\" sig=6 res=1
> [   15.685629] ------------[ cut here ]------------
> [   15.685631] WARNING: CPU: 2 PID: 454 at mm/page_alloc.c:5368

Naresh, I am having difficult to reproduce this reliablely. If you have
spare cycles, do you mind reverting those to see if you can still
reproduce? I can't seems to find other recent commits more suspicious
than that series.

37e73e3b0a9d drivers: virtio_mem: use pageblock size as the minimum virtio_mem size.
d2b9cd2acb2b mm: cma: use pageblock_order as the single alignment
7f125582227e mm: page_isolation: enable arbitrary range page isolation.
fb009b307b21 mm: make alloc_contig_range work at pageblock granularity
7c7e18d510f4 mm: page_isolation: check specified range for unmovable pages
6a242a94b883 mm: page_isolation: move has_unmovable_pages() to mm/page_isolation.c

$ git revert --no-edit e389355485b7..37e73e3b0a9d