mirror of
https://github.com/torvalds/linux.git
synced 2026-10-23 07:11:03 +02:00
powerpc/align: use get_user_instr() for a user-mode instruction
fix_alignment() already reads the instruction with copy_inst_from_kernel_nofault() when the PC is a kernel address, and only uses __get_user_instr() when it is not. That pointer is an ordinary user address, so read it with get_user_instr(). On powerpc __get_user() already does might_fault() and opens user access for the read itself, so the only difference is the address check. This is part of getting rid of __get_user() and __put_user() entirely. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
52907f0e47
commit
5dcf33085c
|
|
@ -298,7 +298,7 @@ int fix_alignment(struct pt_regs *regs)
|
|||
if (is_kernel_addr(regs->nip))
|
||||
r = copy_inst_from_kernel_nofault(&instr, (void *)regs->nip);
|
||||
else
|
||||
r = __get_user_instr(instr, (void __user *)regs->nip);
|
||||
r = get_user_instr(instr, (void __user *)regs->nip);
|
||||
|
||||
if (unlikely(r))
|
||||
return -EFAULT;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user