forked from xuos/xiuos
Fix userland irq response
This commit is contained in:
parent
6632bc08e9
commit
404294a742
|
@ -76,6 +76,12 @@ static void send_irq_to_user(int irq_num)
|
|||
buf->header.magic = IPC_MSG_MAGIC;
|
||||
buf->header.valid = 1;
|
||||
|
||||
struct session_backend* session_backend = irq_forward_table[irq_num].p_kernel_session;
|
||||
struct Thread* server_to_call = session_backend->server;
|
||||
if (!enqueue(&server_to_call->sessions_to_be_handle, 0, (void*)&session_backend->server_side)) {
|
||||
return;
|
||||
}
|
||||
assert(!queue_is_empty(&server_to_call->sessions_to_be_handle));
|
||||
if (irq_forward_table[irq_num].handle_task->state == BLOCKED) {
|
||||
xizi_task_manager.task_unblock(irq_forward_table[irq_num].handle_task);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue