aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um/os-Linux/irq.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/um/os-Linux/irq.c')
-rw-r--r--arch/um/os-Linux/irq.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/arch/um/os-Linux/irq.c b/arch/um/os-Linux/irq.c
index 3788d4568d33..64c114b02701 100644
--- a/arch/um/os-Linux/irq.c
+++ b/arch/um/os-Linux/irq.c
@@ -142,17 +142,14 @@ void os_set_ioignore(void)
142 142
143void init_irq_signals(int on_sigstack) 143void init_irq_signals(int on_sigstack)
144{ 144{
145 __sighandler_t h;
146 int flags; 145 int flags;
147 146
148 flags = on_sigstack ? SA_ONSTACK : 0; 147 flags = on_sigstack ? SA_ONSTACK : 0;
149 if (timer_irq_inited)
150 h = (__sighandler_t)alarm_handler;
151 else
152 h = boot_timer_handler;
153 148
154 set_handler(SIGVTALRM, h, flags | SA_RESTART, 149 set_handler(SIGVTALRM, (__sighandler_t) alarm_handler,
155 SIGUSR1, SIGIO, SIGWINCH, SIGALRM, -1); 150 flags | SA_RESTART, SIGUSR1, SIGIO, SIGWINCH, SIGALRM, -1);
151 set_handler(SIGALRM, (__sighandler_t) alarm_handler,
152 flags | SA_RESTART, SIGUSR1, SIGIO, SIGWINCH, SIGALRM, -1);
156 set_handler(SIGIO, (__sighandler_t) sig_handler, flags | SA_RESTART, 153 set_handler(SIGIO, (__sighandler_t) sig_handler, flags | SA_RESTART,
157 SIGUSR1, SIGIO, SIGWINCH, SIGALRM, SIGVTALRM, -1); 154 SIGUSR1, SIGIO, SIGWINCH, SIGALRM, SIGVTALRM, -1);
158 signal(SIGWINCH, SIG_IGN); 155 signal(SIGWINCH, SIG_IGN);