diff options
author | Thomas Meyer <thomas@m3y3r.de> | 2017-07-06 00:31:14 +0200 |
---|---|---|
committer | Richard Weinberger <richard@nod.at> | 2017-07-07 10:37:42 +0200 |
commit | 22e19c8d062cc19832cde13225cbc6e5283cd969 (patch) | |
tree | fc86594a99176eef08e1532691cc1fa9560b7ce9 /arch/um | |
parent | 1bcbfbfdeb0091036db7a32e1cd31b49cce5983a (diff) | |
download | talos-obmc-linux-22e19c8d062cc19832cde13225cbc6e5283cd969.tar.gz talos-obmc-linux-22e19c8d062cc19832cde13225cbc6e5283cd969.zip |
um: userspace - be more verbose in ptrace set regs error
When ptrace fails to set GP/FP regs for the target process,
log the error before crashing the UML kernel.
Signed-off-by: Thomas Meyer <thomas@m3y3r.de>
Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'arch/um')
-rw-r--r-- | arch/um/os-Linux/skas/process.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/arch/um/os-Linux/skas/process.c b/arch/um/os-Linux/skas/process.c index 03b3c4cc7735..31c9be2c2bdd 100644 --- a/arch/um/os-Linux/skas/process.c +++ b/arch/um/os-Linux/skas/process.c @@ -323,11 +323,17 @@ void userspace(struct uml_pt_regs *regs) * fail. In this case, there is nothing to do but * just kill the process. */ - if (ptrace(PTRACE_SETREGS, pid, 0, regs->gp)) + if (ptrace(PTRACE_SETREGS, pid, 0, regs->gp)) { + printk(UM_KERN_ERR "userspace - ptrace set regs " + "failed, errno = %d\n", errno); fatal_sigsegv(); + } - if (put_fp_registers(pid, regs->fp)) + if (put_fp_registers(pid, regs->fp)) { + printk(UM_KERN_ERR "userspace - ptrace set fp regs " + "failed, errno = %d\n", errno); fatal_sigsegv(); + } /* Now we set local_using_sysemu to be used for one loop */ local_using_sysemu = get_using_sysemu(); |