diff options
author | Borislav Petkov <bp@suse.de> | 2020-11-06 21:37:25 +0300 |
---|---|---|
committer | Borislav Petkov <bp@suse.de> | 2021-03-15 13:25:38 +0300 |
commit | 63c66cde7bbcc79aac14b25861c5b2495eede57b (patch) | |
tree | 6c3738789240341911adda70fbeb16020ab83e64 /arch/x86/kernel/alternative.c | |
parent | 8c98a605544cfdec21d32fcf8fc855dc439f608f (diff) | |
download | linux-63c66cde7bbcc79aac14b25861c5b2495eede57b.tar.xz |
x86/alternative: Use insn_decode()
No functional changes, just simplification.
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20210304174237.31945-10-bp@alien8.de
Diffstat (limited to 'arch/x86/kernel/alternative.c')
-rw-r--r-- | arch/x86/kernel/alternative.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c index 8d778e46725d..ce28c5c1deba 100644 --- a/arch/x86/kernel/alternative.c +++ b/arch/x86/kernel/alternative.c @@ -1274,15 +1274,15 @@ static void text_poke_loc_init(struct text_poke_loc *tp, void *addr, const void *opcode, size_t len, const void *emulate) { struct insn insn; + int ret; memcpy((void *)tp->text, opcode, len); if (!emulate) emulate = opcode; - kernel_insn_init(&insn, emulate, MAX_INSN_SIZE); - insn_get_length(&insn); + ret = insn_decode(&insn, emulate, MAX_INSN_SIZE, INSN_MODE_KERN); - BUG_ON(!insn_complete(&insn)); + BUG_ON(ret < 0); BUG_ON(len != insn.length); tp->rel_addr = addr - (void *)_stext; |