MIPS: bpf: Fix stack space allocation for BPF memwords on MIPS64
When allocating stack space for BPF memwords we need to use the appropriate 32 or 64-bit instruction to avoid losing the top 32 bits of the stack pointer. Signed-off-by: Markos Chandras <markos.chandras@imgtec.com> Cc: "David S. Miller" <davem@davemloft.net> Cc: Daniel Borkmann <dborkman@redhat.com> Cc: Alexei Starovoitov <ast@plumgrid.com> Cc: netdev@vger.kernel.org Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/7135/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
Родитель
b6a14a9845
Коммит
d8214ef14a
|
@ -623,7 +623,10 @@ static void save_bpf_jit_regs(struct jit_ctx *ctx, unsigned offset)
|
|||
if (ctx->flags & SEEN_MEM) {
|
||||
if (real_off % (RSIZE * 2))
|
||||
real_off += RSIZE;
|
||||
emit_addiu(r_M, r_sp, real_off, ctx);
|
||||
if (config_enabled(CONFIG_64BIT))
|
||||
emit_daddiu(r_M, r_sp, real_off, ctx);
|
||||
else
|
||||
emit_addiu(r_M, r_sp, real_off, ctx);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче