Re: linux-next: build failure after merge of the mm tree

From: Andrew Morton
Date: Mon Dec 09 2024 - 21:26:08 EST


On Mon, 9 Dec 2024 17:08:29 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:

> Hi all,
>
> After merging the mm tree, today's linux-next build (powerpc allyesconfig)
> failed like this:
>
> In file included from mm/damon/vaddr.c:736:
> mm/damon/tests/vaddr-kunit.h: In function 'damon_test_three_regions_in_vmas':
> mm/damon/tests/vaddr-kunit.h:92:1: error: the frame size of 3280 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
> 92 | }
> | ^
>
> Presumably caused by commit
>
> 062111898568 ("mm: move per-vma lock into vm_area_struct")
>

How about this?


From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Subject: mm/damon/tests/vaddr-kunit.h: reduce stack consumption
Date: Mon Dec 9 06:20:01 PM PST 2024

After "mm: move per-vma lock into vm_area_struct" we're hitting

mm/damon/tests/vaddr-kunit.h: In function 'damon_test_three_regions_in_vmas':
mm/damon/tests/vaddr-kunit.h:92:1: error: the frame size of 3280 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]

Fix by moving all those vmas off the stack.


Closes: https://lkml.kernel.org/r/20241209170829.11311e70@xxxxxxxxxxxxxxxx
Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Cc: SeongJae Park <sj@xxxxxxxxxx>
Cc: Suren Baghdasaryan <surenb@xxxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
---

mm/damon/tests/vaddr-kunit.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/mm/damon/tests/vaddr-kunit.h~mm-damon-tests-vaddr-kunith-reduce-stack-consumption
+++ a/mm/damon/tests/vaddr-kunit.h
@@ -68,7 +68,7 @@ static void damon_test_three_regions_in_
static struct mm_struct mm;
struct damon_addr_range regions[3] = {0};
/* 10-20-25, 200-210-220, 300-305, 307-330 */
- struct vm_area_struct vmas[] = {
+ static const struct vm_area_struct vmas[] = {
(struct vm_area_struct) {.vm_start = 10, .vm_end = 20},
(struct vm_area_struct) {.vm_start = 20, .vm_end = 25},
(struct vm_area_struct) {.vm_start = 200, .vm_end = 210},
_