Rev 1573 | Rev 1595 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1573 | Rev 1591 | ||
---|---|---|---|
Line 213... | Line 213... | ||
213 | ASSERT(irq_conns); |
213 | ASSERT(irq_conns); |
214 | spinlock_lock(&irq_conns[irq].lock); |
214 | spinlock_lock(&irq_conns[irq].lock); |
215 | 215 | ||
216 | if (irq_conns[irq].box) { |
216 | if (irq_conns[irq].box) { |
217 | call = ipc_call_alloc(FRAME_ATOMIC); |
217 | call = ipc_call_alloc(FRAME_ATOMIC); |
- | 218 | if (!call) { |
|
- | 219 | spinlock_unlock(&irq_conns[irq].lock); |
|
- | 220 | return; |
|
- | 221 | } |
|
218 | call->flags |= IPC_CALL_NOTIF; |
222 | call->flags |= IPC_CALL_NOTIF; |
219 | IPC_SET_METHOD(call->data, IPC_M_INTERRUPT); |
223 | IPC_SET_METHOD(call->data, IPC_M_INTERRUPT); |
220 | IPC_SET_ARG1(call->data, irq); |
224 | IPC_SET_ARG1(call->data, irq); |
221 | IPC_SET_ARG3(call->data, atomic_preinc(&irq_conns[irq].counter)); |
225 | IPC_SET_ARG3(call->data, atomic_preinc(&irq_conns[irq].counter)); |
222 | 226 |