diff options
author | Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com> | 2019-08-22 00:53:58 +0530 |
---|---|---|
committer | Daniel Borkmann <daniel@iogearbox.net> | 2019-08-26 23:05:01 +0200 |
commit | ede7c460b1da5be7b8ef4efe47f1687babf06408 (patch) | |
tree | e5263710f10a78a6a58716b01eda99dfae0c561a /fs | |
parent | 86c28b2d69f93a218a9a5cef146ed0097a98687f (diff) |
bpf: handle 32-bit zext during constant blinding
Since BPF constant blinding is performed after the verifier pass, the
ALU32 instructions inserted for doubleword immediate loads don't have a
corresponding zext instruction. This is causing a kernel oops on powerpc
and can be reproduced by running 'test_cgroup_storage' with
bpf_jit_harden=2.
Fix this by emitting BPF_ZEXT during constant blinding if
prog->aux->verifier_zext is set.
Fixes: a4b1d3c1ddf6cb ("bpf: verifier: insert zero extension according to analysis result")
Reported-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Reviewed-by: Jiong Wang <jiong.wang@netronome.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Diffstat (limited to 'fs')
0 files changed, 0 insertions, 0 deletions