Lines Matching defs:softcall

39  * Handle software interrupts through 'softcall' mechanism
41 * At present softcall mechanism uses a global list headed by softhead.
43 * nature of entries in the softcall list. softcall() takes care of adding
48 * one instance of softint should process the softcall list with the exception
55 * - Lower half which steals the entries from softcall queue and execute
90 * a - When an entry is being enqueued to softcall queue then the state
93 * b - When interrupt handler has started processing softcall queue.
95 * c - When interrupt handler finished processing softcall queue, the
98 * d - softcall() generates another softlevel1 iff interrupt handler
108 * These states are needed for softcall mechanism since Solaris has only
113 * - to process the softcall queue.
119 * Defined states for softcall processing.
122 #define SOFT_PEND 0x02 /* softcall list needs processing */
126 typedef struct softcall {
129 struct softcall *sc_next; /* next in list */
133 * softcall list and state variables.
148 * This ensures that softcall entries don't get stuck for long. It's expressed
156 * The last CPU which will drain softcall queue.
161 * CPUSET to hold the CPU which is processing softcall queue
168 * protects softcall lists and control variable softcall_state.
203 * Gets called when softcall queue is not moving forward. We choose
296 * If softcall() was called at low pil then we may
313 softcall(void (*func)(void *), void *arg)
426 * Don't process softcall queue if current CPU is quiesced or
428 * thread but softcall already sent a xcall.
458 * process softcall queues.
499 * No longer need softcall processing from current
501 * (a) softcall is in SOFT_IDLE state or
502 * (b) There is a CPU already draining softcall