blob: c7bfd5ee392573b5a79c9eb8dc676b00306c7046 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
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
Bodo Stroesser51a6b0c2005-05-05 16:15:38 -070011void sig_handler(ARCH_SIGHDLR_PARAM)
Linus Torvalds1da177e2005-04-16 15:20:36 -070012{
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
20extern int timer_irq_inited;
21
Bodo Stroesser51a6b0c2005-05-05 16:15:38 -070022void alarm_handler(ARCH_SIGHDLR_PARAM)
Linus Torvalds1da177e2005-04-16 15:20:36 -070023{
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 */