um: userspace - be more verbose in ptrace set regs error
authorThomas Meyer <thomas@m3y3r.de>
Wed, 5 Jul 2017 22:31:14 +0000 (00:31 +0200)
committerRichard Weinberger <richard@nod.at>
Fri, 7 Jul 2017 08:37:42 +0000 (10:37 +0200)
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>
arch/um/os-Linux/skas/process.c

index 03b3c4cc7735ac49f30e4b867dbd06944ec6456d..31c9be2c2bddf03ad03ede948826b7573c8c93ab 100644 (file)
@@ -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();