linux-stable/arch/powerpc/net
Christophe Leroy 5b5fab270f powerpc/bpf/32: Only set a stack frame when necessary
[ Upstream commit d084dcf256 ]

Until now a stack frame was set at all time due to the need
to keep tail call counter in the stack.

But since commit 89d21e259a ("powerpc/bpf/32: Fix Oops on tail call
tests") the tail call counter is passed via register r4. It is therefore
not necessary anymore to have a stack frame for that.

Just like PPC64, implement bpf_has_stack_frame() and only sets the frame
when needed.

The difference with PPC64 is that PPC32 doesn't have a redzone, so
the stack is required as soon as non volatile registers are used or
when tail call count is set up.

Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
[mpe: Fix commit reference in change log]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/62d7b654a3cfe73d998697cb29bbc5ffd89bfdb1.1675245773.git.christophe.leroy@csgroup.eu
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-03-17 08:50:30 +01:00
..
bpf_jit.h powerpc/inst: Remove PPC_INST_BL 2022-05-22 15:58:27 +10:00
bpf_jit_comp.c powerpc: Replace PPC64_ELF_ABI_v{1/2} by CONFIG_PPC64_ELF_ABI_V{1/2} 2022-05-19 23:11:29 +10:00
bpf_jit_comp32.c powerpc/bpf/32: Only set a stack frame when necessary 2023-03-17 08:50:30 +01:00
bpf_jit_comp64.c powerpc/bpf/64: Add instructions for atomic_[cmp]xchg 2022-06-29 19:37:08 +10:00
Makefile powerpc/bpf: Implement extended BPF on PPC32 2021-04-03 21:22:21 +11:00