The signal.c can't use heap for bit data located on stack. However, by default a compiler warns us about overstepping stack frame size threshold:
arch/um/os-Linux/signal.c: In function ‘sig_handler_common’: arch/um/os-Linux/signal.c:51:1: warning: the frame size of 2960 bytes is larger than 2048 bytes [-Wframe-larger-than=] 51 | } | ^ arch/um/os-Linux/signal.c: In function ‘timer_real_alarm_handler’: arch/um/os-Linux/signal.c:95:1: warning: the frame size of 2960 bytes is larger than 2048 bytes [-Wframe-larger-than=] 95 | } | ^
Due to above increase stack frame size threshold explicitly for signal.c to avoid unnecessary warning.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- arch/um/os-Linux/Makefile | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/arch/um/os-Linux/Makefile b/arch/um/os-Linux/Makefile index 839915b8c31c..77ac50baa3f8 100644 --- a/arch/um/os-Linux/Makefile +++ b/arch/um/os-Linux/Makefile @@ -10,6 +10,8 @@ obj-y = execvp.o file.o helper.o irq.o main.o mem.o process.o \ registers.o sigio.o signal.o start_up.o time.o tty.o \ umid.o user_syms.o util.o drivers/ skas/
+CFLAGS_signal.o += -Wframe-larger-than=4096 + obj-$(CONFIG_ARCH_REUSE_HOST_VSYSCALL_AREA) += elf_aux.o
USER_OBJS := $(user-objs-y) elf_aux.o execvp.o file.o helper.o irq.o \
On Thu, Dec 10, 2020 at 2:23 AM Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
The signal.c can't use heap for bit data located on stack. However, by default a compiler warns us about overstepping stack frame size threshold:
arch/um/os-Linux/signal.c: In function ‘sig_handler_common’: arch/um/os-Linux/signal.c:51:1: warning: the frame size of 2960 bytes is larger than 2048 bytes [-Wframe-larger-than=] 51 | } | ^ arch/um/os-Linux/signal.c: In function ‘timer_real_alarm_handler’: arch/um/os-Linux/signal.c:95:1: warning: the frame size of 2960 bytes is larger than 2048 bytes [-Wframe-larger-than=] 95 | } | ^
Due to above increase stack frame size threshold explicitly for signal.c to avoid unnecessary warning.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
Thanks -- this has been annoying me for a while!
I've tested it -- the warning is indeed gone, and nothing else seems to break.
Tested-by: David Gow davidgow@google.com
Cheers, -- David
linux-kselftest-mirror@lists.linaro.org