projects
/
platform
/
kernel
/
linux-starfive.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
5e32c64
)
x86/traps: Convert to insn_decode()
author
Borislav Petkov
<bp@suse.de>
Mon, 16 Nov 2020 17:38:45 +0000
(18:38 +0100)
committer
Borislav Petkov
<bp@suse.de>
Mon, 15 Mar 2021 11:00:18 +0000
(12:00 +0100)
Simplify code, no functional changes.
Signed-off-by: Borislav Petkov <bp@suse.de>
Link:
https://lkml.kernel.org/r/20210304174237.31945-15-bp@alien8.de
arch/x86/kernel/traps.c
patch
|
blob
|
history
diff --git
a/arch/x86/kernel/traps.c
b/arch/x86/kernel/traps.c
index ac1874a2a70e8cc41654bc652a8922238192a8ff..0da8d2a889cb37bc26ae21940766a73b22ce7e9a 100644
(file)
--- a/
arch/x86/kernel/traps.c
+++ b/
arch/x86/kernel/traps.c
@@
-498,14
+498,15
@@
static enum kernel_gp_hint get_kernel_gp_address(struct pt_regs *regs,
{
u8 insn_buf[MAX_INSN_SIZE];
struct insn insn;
+ int ret;
if (copy_from_kernel_nofault(insn_buf, (void *)regs->ip,
MAX_INSN_SIZE))
return GP_NO_HINT;
-
kernel_insn_init(&insn, insn_buf, MAX_INSN_SIZE
);
- i
nsn_get_modrm(&insn);
-
insn_get_sib(&insn)
;
+
ret = insn_decode(&insn, insn_buf, MAX_INSN_SIZE, INSN_MODE_KERN
);
+ i
f (ret < 0)
+
return GP_NO_HINT
;
*addr = (unsigned long)insn_get_addr_ref(&insn, regs);
if (*addr == -1UL)