diff options
author | Markos Chandras <markos.chandras@imgtec.com> | 2014-06-23 10:38:47 +0100 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2014-06-26 10:48:20 +0100 |
commit | 35a8e16abe36d385d602997e1500a668d2b9c5cf (patch) | |
tree | 4c7a736ab5d785012c3a84259d65fb2115eedce4 /arch/mips/net | |
parent | 84c68cbc667287dfd5eb793b6715c6d76a318e3f (diff) | |
download | op-kernel-dev-35a8e16abe36d385d602997e1500a668d2b9c5cf.zip op-kernel-dev-35a8e16abe36d385d602997e1500a668d2b9c5cf.tar.gz |
MIPS: bpf: Use the LO register to get division's quotient
Reading from the HI register to get the division result is wrong.
The quotient is placed in the LO register.
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/7122/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/net')
-rw-r--r-- | arch/mips/net/bpf_jit.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/mips/net/bpf_jit.c b/arch/mips/net/bpf_jit.c index f7c2064..5cc92c4 100644 --- a/arch/mips/net/bpf_jit.c +++ b/arch/mips/net/bpf_jit.c @@ -408,7 +408,7 @@ static inline void emit_div(unsigned int dst, unsigned int src, u32 *p = &ctx->target[ctx->idx]; uasm_i_divu(&p, dst, src); p = &ctx->target[ctx->idx + 1]; - uasm_i_mfhi(&p, dst); + uasm_i_mflo(&p, dst); } ctx->idx += 2; /* 2 insts */ } |