Lines Matching +full:irq +full:- +full:signals
1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2015 Anton Ivanov (aivanov@{brocade.com,kot-begemot.co.uk})
6 * Copyright (C) 2004 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
15 #include <as-layout.h>
45 /* enable signals if sig isn't IRQ signal */ in sig_handler_common()
55 * These are the asynchronous signals. SIGPROF is excluded because we want to
56 * be able to profile all of UML, not just the non-critical sections. If
57 * profiling is not thread-safe, then that is not my problem. We can disable
81 * In TT_MODE_EXTERNAL, need to still call time-travel in sig_handler()
82 * handlers unless signals are also blocked for the in sig_handler()
180 mcontext_t *mc = &uc->uc_mcontext; in hard_handler()
204 sig--; in hard_handler()
210 * Again, pending comes back with a mask of signals in hard_handler()
212 * is non-zero, we just go back, set up the stack in hard_handler()
228 /* block irq ones */ in set_handler()
238 flags |= SA_RESTART; /* if it's an irq signal */ in set_handler()
243 panic("sigaction failed - errno = %d\n", errno); in set_handler()
248 panic("sigprocmask failed - errno = %d\n", errno); in set_handler()
263 return -errno; in change_sig()
272 * This must return with signals disabled, so this barrier in block_signals()
293 * We loop because the IRQ handler returns with interrupts off. So, in unblock_signals()
294 * interrupts may have arrived and we need to re-enable them and in unblock_signals()
299 * Save and reset save_pending after enabling signals. This in unblock_signals()
314 * We have pending interrupts, so disable signals, as the in unblock_signals()
319 * pending signals will mess up the tracing state. in unblock_signals()
345 /* Re-enable signals and trace that we're doing so. */ in unblock_signals()
407 /* we need to run time-travel handlers even if not enabled */ in unblock_signals_hard()