linux/arch
Michael Ellerman b380148745 powerpc/64s: Increase default stack size to 32KB
commit 18f14afe28 upstream.

There are reports of kernels crashing due to stack overflow while
running OpenShift (Kubernetes). The primary contributor to the stack
usage seems to be openvswitch, which is used by OVN-Kubernetes (based on
OVN (Open Virtual Network)), but NFS also contributes in some stack
traces.

There may be some opportunities to reduce stack usage in the openvswitch
code, but doing so potentially require tradeoffs vs performance, and
also requires testing across architectures.

Looking at stack usage across the kernel (using -fstack-usage), shows
that ppc64le stack frames are on average 50-100% larger than the
equivalent function built for x86-64. Which is not surprising given the
minimum stack frame size is 32 bytes on ppc64le vs 16 bytes on x86-64.

So increase the default stack size to 32KB for the modern 64-bit Book3S
platforms, ie. pseries (virtualised) and powernv (bare metal). That
leaves the older systems like G5s, and the AmigaOne (pasemi) with a 16KB
stack which should be sufficient on those machines.

Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Aneesh Kumar K.V (IBM) <aneesh.kumar@kernel.org>
Link: https://msgid.link/20231215124449.317597-1-mpe@ellerman.id.au
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-01-25 15:35:42 -08:00
..
alpha Kbuild updates for v6.6 2023-09-05 11:01:47 -07:00
arc ARC: fix smatch warning 2024-01-20 11:51:44 +01:00
arm ARM: davinci: always select CONFIG_CPU_ARM926T 2024-01-25 15:35:30 -08:00
arm64 arm64: dts: rockchip: Fix led pinctrl of lubancat 1 2024-01-25 15:35:29 -08:00
csky csky: fix arch_jump_label_transform_static override 2024-01-25 15:35:18 -08:00
hexagon Add x86 shadow stack support 2023-08-31 12:20:12 -07:00
ia64 cpu-hotplug: Provide prototypes for arch CPU registration 2023-10-11 14:27:37 +02:00
loongarch efi/loongarch: Use load address to calculate kernel entry address 2024-01-20 11:51:43 +01:00
m68k ata changes for 6.6 2023-09-05 12:37:28 -07:00
microblaze Microblaze patches for 6.6-rc1 2023-09-05 10:15:22 -07:00
mips mips/smp: Call rcutree_report_cpu_starting() earlier 2024-01-25 15:35:41 -08:00
nios2 Add x86 shadow stack support 2023-08-31 12:20:12 -07:00
openrisc OpenRISC updates for 6.6 2023-09-05 10:09:31 -07:00
parisc parisc: Fix asm operand number out of range build error in bug table 2023-12-13 18:45:30 +01:00
powerpc powerpc/64s: Increase default stack size to 32KB 2024-01-25 15:35:42 -08:00
riscv posix-timers: Get rid of [COMPAT_]SYS_NI() uses 2024-01-20 11:51:46 +01:00
s390 posix-timers: Get rid of [COMPAT_]SYS_NI() uses 2024-01-20 11:51:46 +01:00
sh sh: bios: Revive earlyprintk support 2023-11-20 11:59:22 +01:00
sparc sparc32: fix a braino in fault handling in csum_and_copy_..._user() 2023-10-27 20:06:06 -04:00
um This pull request contains the following changes for UML: 2023-09-04 11:32:21 -07:00
x86 perf/x86/intel/uncore: Fix NULL pointer dereference issue in upi_fill_topology() 2024-01-25 15:35:14 -08:00
xtensa xtensa: boot/lib: fix function prototypes 2023-09-20 05:03:30 -07:00
.gitignore
Kconfig Add x86 shadow stack support 2023-08-31 12:20:12 -07:00