Commit | Line | Data |
---|---|---|
1da177e4 LT |
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 | */ |