Changeset 716185d in mainline for kernel/generic/src/ipc/ipc.c


Ignore:
Timestamp:
2012-10-03T20:37:07Z (13 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
466e95f7
Parents:
190976f
Message:

Call request_process() callback for incoming calls during IPC cleanup.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/ipc/ipc.c

    r190976f r716185d  
    513513                irq_spinlock_unlock(&box->lock, true);
    514514
     515                if (lst == &box->calls) {
     516                        sysipc_ops_t *ops;
     517
     518                        ops = sysipc_ops_get(call->request_method);
     519                        if (ops->request_process)
     520                                (void) ops->request_process(call, box);
     521                }
     522
    515523                ipc_data_t old = call->data;
    516524                IPC_SET_RETVAL(call->data, EHANGUP);
     
    753761       
    754762        /* Answer all messages in 'calls' and 'dispatched_calls' queues */
     763        ipc_cleanup_call_list(&TASK->answerbox, &TASK->answerbox.calls);
    755764        ipc_cleanup_call_list(&TASK->answerbox,
    756765            &TASK->answerbox.dispatched_calls);
    757         ipc_cleanup_call_list(&TASK->answerbox, &TASK->answerbox.calls);
    758766
    759767        ipc_forget_all_active_calls();
Note: See TracChangeset for help on using the changeset viewer.