]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - arch/um/os-Linux/skas/process.c
um: siginfo cleanup
[karo-tx-linux.git] / arch / um / os-Linux / skas / process.c
index 441e4ba074f4c3386d06b8f7b7830f3c2c82aa8d..d531879a4617695e02df3c1550922cfede7ea4e3 100644 (file)
@@ -414,7 +414,7 @@ void userspace(struct uml_pt_regs *regs)
                if (WIFSTOPPED(status)) {
                        int sig = WSTOPSIG(status);
 
-                       ptrace(PTRACE_GETSIGINFO, pid, 0, &si);
+                       ptrace(PTRACE_GETSIGINFO, pid, 0, (struct siginfo *)&si);
 
                        switch (sig) {
                        case SIGSEGV:
@@ -422,7 +422,7 @@ void userspace(struct uml_pt_regs *regs)
                                    !ptrace_faultinfo) {
                                        get_skas_faultinfo(pid,
                                                           &regs->faultinfo);
-                                       (*sig_info[SIGSEGV])(SIGSEGV, &si,
+                                       (*sig_info[SIGSEGV])(SIGSEGV, (struct siginfo *)&si,
                                                             regs);
                                }
                                else handle_segv(pid, regs);
@@ -431,14 +431,14 @@ void userspace(struct uml_pt_regs *regs)
                                handle_trap(pid, regs, local_using_sysemu);
                                break;
                        case SIGTRAP:
-                               relay_signal(SIGTRAP, &si, regs);
+                               relay_signal(SIGTRAP, (struct siginfo *)&si, regs);
                                break;
                        case SIGVTALRM:
                                now = os_nsecs();
                                if (now < nsecs)
                                        break;
                                block_signals();
-                               (*sig_info[sig])(sig, &si, regs);
+                               (*sig_info[sig])(sig, (struct siginfo *)&si, regs);
                                unblock_signals();
                                nsecs = timer.it_value.tv_sec *
                                        UM_NSEC_PER_SEC +
@@ -452,7 +452,7 @@ void userspace(struct uml_pt_regs *regs)
                        case SIGFPE:
                        case SIGWINCH:
                                block_signals();
-                               (*sig_info[sig])(sig, &si, regs);
+                               (*sig_info[sig])(sig, (struct siginfo *)&si, regs);
                                unblock_signals();
                                break;
                        default: