]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/um/kernel/trap.c
uml: remove user_util.h
[karo-tx-linux.git] / arch / um / kernel / trap.c
index b5f124a2f6ae843b48d33ca02c2a9800a695578d..2de81d4d9b579bb0b78346cc316af75e8575dffe 100644 (file)
@@ -18,8 +18,9 @@
 #include "asm/current.h"
 #include "asm/irq.h"
 #include "sysdep/sigcontext.h"
-#include "user_util.h"
 #include "kern_util.h"
+#include "as-layout.h"
+#include "arch.h"
 #include "kern.h"
 #include "chan_kern.h"
 #include "mconsole_kern.h"
@@ -128,7 +129,18 @@ out_of_memory:
        goto out;
 }
 
-void segv_handler(int sig, union uml_pt_regs *regs)
+static void bad_segv(struct faultinfo fi, unsigned long ip)
+{
+       struct siginfo si;
+
+       si.si_signo = SIGSEGV;
+       si.si_code = SEGV_ACCERR;
+       si.si_addr = (void __user *) FAULT_ADDRESS(fi);
+       current->thread.arch.faultinfo = fi;
+       force_sig_info(SIGSEGV, &si, current);
+}
+
+static void segv_handler(int sig, union uml_pt_regs *regs)
 {
        struct faultinfo * fi = UPT_FAULTINFO(regs);
 
@@ -205,17 +217,6 @@ unsigned long segv(struct faultinfo fi, unsigned long ip, int is_user, void *sc)
        return(0);
 }
 
-void bad_segv(struct faultinfo fi, unsigned long ip)
-{
-       struct siginfo si;
-
-       si.si_signo = SIGSEGV;
-       si.si_code = SEGV_ACCERR;
-       si.si_addr = (void __user *) FAULT_ADDRESS(fi);
-       current->thread.arch.faultinfo = fi;
-       force_sig_info(SIGSEGV, &si, current);
-}
-
 void relay_signal(int sig, union uml_pt_regs *regs)
 {
        if(arch_handle_signal(sig, regs))
@@ -232,14 +233,14 @@ void relay_signal(int sig, union uml_pt_regs *regs)
        force_sig(sig, current);
 }
 
-void bus_handler(int sig, union uml_pt_regs *regs)
+static void bus_handler(int sig, union uml_pt_regs *regs)
 {
        if(current->thread.fault_catcher != NULL)
                do_longjmp(current->thread.fault_catcher, 1);
        else relay_signal(sig, regs);
 }
 
-void winch(int sig, union uml_pt_regs *regs)
+static void winch(int sig, union uml_pt_regs *regs)
 {
        do_IRQ(WINCH_IRQ, regs);
 }