Linux-2.6.12-rc2
[linux-flexiantxendom0-natty.git] / arch / um / os-Linux / signal.c
1 /*
2  * Copyright (C) 2004 PathScale, Inc
3  * Licensed under the GPL
4  */
5
6 #include <signal.h>
7 #include "time_user.h"
8 #include "mode.h"
9 #include "sysdep/signal.h"
10
11 void sig_handler(int sig)
12 {
13         struct sigcontext *sc;
14
15         ARCH_GET_SIGCONTEXT(sc, sig);
16         CHOOSE_MODE_PROC(sig_handler_common_tt, sig_handler_common_skas,
17                          sig, sc);
18 }
19
20 extern int timer_irq_inited;
21
22 void alarm_handler(int sig)
23 {
24         struct sigcontext *sc;
25
26         ARCH_GET_SIGCONTEXT(sc, sig);
27         if(!timer_irq_inited) return;
28
29         if(sig == SIGALRM)
30                 switch_timers(0);
31
32         CHOOSE_MODE_PROC(sig_handler_common_tt, sig_handler_common_skas,
33                          sig, sc);
34
35         if(sig == SIGALRM)
36                 switch_timers(1);
37 }
38
39 /*
40  * Overrides for Emacs so that we follow Linus's tabbing style.
41  * Emacs will notice this stuff at the end of the file and automatically
42  * adjust the settings for this buffer only.  This must remain at the end
43  * of the file.
44  * ---------------------------------------------------------------------------
45  * Local variables:
46  * c-file-style: "linux"
47  * End:
48  */