Re: [PATCH] lib: stackinit: Adjust target string to 8 bytes for m68k

From: Guenter Roeck
Date: Tue Feb 27 2024 - 18:04:03 EST


On Tue, Feb 27, 2024 at 02:46:56PM -0800, Kees Cook wrote:
> For reasons I cannot understand, m68k moves the start of the stack frame
> for consecutive calls to the same function if the function's test
> variable is larger than 8 bytes. This was only happening for the char
> array test (obviously), so adjust the length of the string for m68k
> only. I want the array size to be longer than "unsigned long" for every
> given architecture, so the other remain unchanged.
>
> Additionally adjust the error message to be a bit more clear about
> what's happened, and move the KUNIT check outside of the consecutive
> calls to minimize what happens between them.
>
> Reported-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> Closes: https://lore.kernel.org/lkml/a0d10d50-2720-4ecd-a2c6-c2c5e5aeee65@xxxxxxxxxxxx/
> Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>

Hmm, guess I misunderstood the other e-mail.

Anyway, it works. After re-enabling the m68k tests:

Tested-by: Guenter Roeck <linux@xxxxxxxxxxxx>

I'll also run it through qemu for other architectures to be sure that there
is no negative impact.

Thanks,
Guenter