diff options
author | Masami Hiramatsu <mhiramat@kernel.org> | 2020-12-03 07:50:37 +0300 |
---|---|---|
committer | Borislav Petkov <bp@suse.de> | 2020-12-06 11:58:13 +0300 |
commit | 4e9a5ae8df5b3365183150f6df49e49dece80d8c (patch) | |
tree | 3f10655b516680582aceaaae84846f4e53465d26 /lib/test_overflow.c | |
parent | 8dcc0e19dfbd73ad6b3172924d6da8f7f3f8b3b0 (diff) | |
download | linux-4e9a5ae8df5b3365183150f6df49e49dece80d8c.tar.xz |
x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes
Since insn.prefixes.nbytes can be bigger than the size of
insn.prefixes.bytes[] when a prefix is repeated, the proper check must
be
insn.prefixes.bytes[i] != 0 and i < 4
instead of using insn.prefixes.nbytes.
Introduce a for_each_insn_prefix() macro for this purpose. Debugged by
Kees Cook <keescook@chromium.org>.
[ bp: Massage commit message, sync with the respective header in tools/
and drop "we". ]
Fixes: 2b1444983508 ("uprobes, mm, x86: Add the ability to install and remove uprobes breakpoints")
Reported-by: syzbot+9b64b619f10f19d19a7c@syzkaller.appspotmail.com
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Cc: stable@vger.kernel.org
Link: https://lkml.kernel.org/r/160697103739.3146288.7437620795200799020.stgit@devnote2
Diffstat (limited to 'lib/test_overflow.c')
0 files changed, 0 insertions, 0 deletions