Changeset 1b186ed in mainline


Ignore:
Timestamp:
2012-08-21T21:14:04Z (12 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
13dbaa8c
Parents:
32e4643
Message:

Move handling of IPC_M_CONNECT_ME_TO in process_answer() to its private
ops method.

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • abi/include/ipc/ipc.h

    r32e4643 r1b186ed  
    5757#define IPC_CALL_FORWARDED  (1 << 2)
    5858
    59 /** Identify connect_me_to answer */
    60 #define IPC_CALL_CONN_ME_TO  (1 << 3)
    61 
    6259/** Interrupt notification */
    63 #define IPC_CALL_NOTIF  (1 << 4)
     60#define IPC_CALL_NOTIF  (1 << 3)
    6461
    6562
  • kernel/generic/src/ipc/ops/conctmeto.c

    r32e4643 r1b186ed  
    4949        /* Set arg5 for server */
    5050        IPC_SET_ARG5(call->data, (sysarg_t) &TASK->phones[newphid]);
    51         call->flags |= IPC_CALL_CONN_ME_TO;
    5251        call->priv = newphid;
    5352
     
    6665}
    6766
     67static int answer_process(call_t *answer)
     68{
     69        if (IPC_GET_RETVAL(answer->data))
     70                phone_dealloc(answer->priv);
     71        else
     72                IPC_SET_ARG5(answer->data, answer->priv);
     73       
     74        return EOK;
     75}
    6876
    6977sysipc_ops_t ipc_m_connect_me_to_ops = {
     
    7179        .request_process = null_request_process,
    7280        .answer_preprocess = answer_preprocess,
    73         .answer_process = null_answer_process,
     81        .answer_process = answer_process,
    7482};
    7583
  • kernel/generic/src/ipc/sysipc.c

    r32e4643 r1b186ed  
    242242            (call->flags & IPC_CALL_FORWARDED))
    243243                IPC_SET_RETVAL(call->data, EFORWARD);
    244        
    245         if (call->flags & IPC_CALL_CONN_ME_TO) {
    246                 if (IPC_GET_RETVAL(call->data))
    247                         phone_dealloc(call->priv);
    248                 else
    249                         IPC_SET_ARG5(call->data, call->priv);
    250         }
    251244       
    252245        if (call->buffer) {
Note: See TracChangeset for help on using the changeset viewer.