tag | line | file | source code |
sa | 27 | kernel/exit.c | struct sigaction * sa = sig + p->sigaction - 1; |
sa | 35 | kernel/exit.c | if (sa->sa_handler == SIG_IGN && sig != SIGCHLD) |
sa | 38 | kernel/exit.c | if ((sa->sa_handler == SIG_DFL) && |
sa | 196 | kernel/irq.c | struct sigaction * sa = irq_sigaction; |
sa | 198 | kernel/irq.c | for (i = 0 ; i < 16 ; i++, sa++) { |
sa | 199 | kernel/irq.c | if (!sa->sa_handler) |
sa | 203 | kernel/irq.c | (sa->sa_flags & SA_INTERRUPT) ? '+' : ' ', |
sa | 204 | kernel/irq.c | (char *) sa->sa_mask); |
sa | 218 | kernel/irq.c | struct sigaction * sa = irq + irq_sigaction; |
sa | 221 | kernel/irq.c | sa->sa_handler((int) regs); |
sa | 231 | kernel/irq.c | struct sigaction * sa = irq + irq_sigaction; |
sa | 234 | kernel/irq.c | sa->sa_handler(irq); |
sa | 243 | kernel/irq.c | struct sigaction * sa; |
sa | 248 | kernel/irq.c | sa = irq + irq_sigaction; |
sa | 249 | kernel/irq.c | if (sa->sa_handler) |
sa | 255 | kernel/irq.c | *sa = *new_sa; |
sa | 256 | kernel/irq.c | if (sa->sa_flags & SA_INTERRUPT) |
sa | 276 | kernel/irq.c | struct sigaction sa; |
sa | 278 | kernel/irq.c | sa.sa_handler = handler; |
sa | 279 | kernel/irq.c | sa.sa_flags = flags; |
sa | 280 | kernel/irq.c | sa.sa_mask = (unsigned long) devname; |
sa | 281 | kernel/irq.c | sa.sa_restorer = NULL; |
sa | 282 | kernel/irq.c | return irqaction(irq,&sa); |
sa | 287 | kernel/irq.c | struct sigaction * sa = irq + irq_sigaction; |
sa | 294 | kernel/irq.c | if (!sa->sa_handler) { |
sa | 308 | kernel/irq.c | sa->sa_handler = NULL; |
sa | 309 | kernel/irq.c | sa->sa_flags = 0; |
sa | 310 | kernel/irq.c | sa->sa_mask = 0; |
sa | 311 | kernel/irq.c | sa->sa_restorer = NULL; |
sa | 232 | kernel/signal.c | static void setup_frame(struct sigaction * sa, unsigned long ** fp, unsigned long eip, |
sa | 241 | kernel/signal.c | frame = (unsigned long *) sa->sa_restorer; |
sa | 299 | kernel/signal.c | struct sigaction * sa; |
sa | 306 | kernel/signal.c | sa = current->sigaction + signr; |
sa | 322 | kernel/signal.c | sa = current->sigaction + signr - 1; |
sa | 324 | kernel/signal.c | if (sa->sa_handler == SIG_IGN) { |
sa | 332 | kernel/signal.c | if (sa->sa_handler == SIG_DFL) { |
sa | 367 | kernel/signal.c | (regs->eax == -ERESTARTSYS && !(sa->sa_flags & SA_RESTART))) |
sa | 371 | kernel/signal.c | mask &= ~sa->sa_mask; |
sa | 385 | kernel/signal.c | sa = current->sigaction; |
sa | 386 | kernel/signal.c | for (mask = 1 ; mask ; sa++,signr++,mask += mask) { |
sa | 391 | kernel/signal.c | setup_frame(sa,&frame,eip,regs,signr,oldmask); |
sa | 392 | kernel/signal.c | eip = (unsigned long) sa->sa_handler; |
sa | 393 | kernel/signal.c | if (sa->sa_flags & SA_ONESHOT) |
sa | 394 | kernel/signal.c | sa->sa_handler = NULL; |
sa | 400 | kernel/signal.c | current->blocked |= sa->sa_mask; |
sa | 401 | kernel/signal.c | oldmask |= sa->sa_mask; |