[PATCH] mtdchar: mark bits of ioctl handler noinline

Miquel Raynal miquel.raynal at bootlin.com
Tue May 23 06:43:19 PDT 2023


On Mon, 2023-04-17 at 20:56:50 UTC, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd at arndb.de>
> 
> The addition of the mtdchar_read_ioctl() function caused the stack usage
> of mtdchar_ioctl() to grow beyond the warning limit on 32-bit architectures
> with gcc-13:
> 
> drivers/mtd/mtdchar.c: In function 'mtdchar_ioctl':
> drivers/mtd/mtdchar.c:1229:1: error: the frame size of 1488 bytes is larger than 1024 bytes [-Werror=frame-larger-than=]
> 
> Mark both the read and write portions as noinline_for_stack to ensure
> they don't get inlined and use separate stack slots to reduce the
> maximum usage, both in the mtdchar_ioctl() and combined with any
> of its callees.
> 
> Fixes: 095bb6e44eb1 ("mtdchar: add MEMREAD ioctl")
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>
> Reviewed-by: Richard Weinberger <richard at nod.at>

Applied to https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git mtd/fixes, thanks.

Miquel



More information about the linux-mtd mailing list