Changeset 2ba7810 in mainline for generic/include
- Timestamp:
- 2006-03-16T12:24:20Z (20 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- b7dcabb
- Parents:
- d764ddc
- Location:
- generic/include
- Files:
-
- 4 edited
-
errno.h (modified) (1 diff)
-
ipc/ipc.h (modified) (6 diffs)
-
ipc/sysipc.h (modified) (1 diff)
-
syscall/syscall.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
generic/include/errno.h
rd764ddc r2ba7810 36 36 #define ELIMIT -3 /* Limit exceeded */ 37 37 #define EREFUSED -4 /* Connection refused */ 38 #define EFORWARD -5 /* Forward error */ 39 #define EPERM -6 /* Permission denied */ 38 40 39 41 #endif -
generic/include/ipc/ipc.h
rd764ddc r2ba7810 72 72 * These methods have special behaviour 73 73 */ 74 #define IPC_M_IAMCONNECTING 075 74 /** Protocol for CONNECT - TO - ME 76 75 * … … 78 77 * so that it can start initiating new messages. 79 78 * 80 * The protocol for negotiating is as follows:79 * The protocol for negotiating is: 81 80 * - sys_connecttome - sends a message IPC_M_CONNECTTOME 82 81 * - sys_wait_for_call - upon receipt tries to allocate new phone … … 86 85 * error is sent back to caller. Otherwise 87 86 * the call is accepted and the response is sent back. 88 * - the allocated phoneid is passed to userspace as89 * ARG3 of the call.87 * - the allocated phoneid is passed to userspace 88 * (on the receiving sid) as ARG3 of the call. 90 89 * - the caller obtains taskid of the called thread 91 90 */ 92 91 #define IPC_M_CONNECTTOME 1 92 /** Protocol for CONNECT - ME - TO 93 * 94 * Calling process asks the callee to create for him a new connection. 95 * E.g. the caller wants a name server to connect him to print server. 96 * 97 * The protocol for negotiating is: 98 * - sys_connect_me_to - send a synchronous message to name server 99 * indicating that it wants to be connected to some 100 * service 101 * recepient - if ipc_answer == 0, then accept connection 102 * - otherwise connection refused 103 * - recepient may forward message. Forwarding 104 * system message 105 * 106 */ 93 107 #define IPC_M_CONNECTMETO 2 108 /* Control messages that the server sends to the processes 109 * about their connections. 110 */ 94 111 95 112 96 113 /* Well-known methods */ 97 #define IPC_M_ FIRST_USER 512114 #define IPC_M_LAST_SYSTEM 511 98 115 #define IPC_M_PING 512 99 116 /* User methods */ … … 124 141 task_t *task; 125 142 126 mutex_t mutex; 127 condvar_t cv; 143 waitq_t wq; 128 144 129 145 link_t connected_phones; /**< Phones connected to this answerbox */ … … 138 154 link_t list; 139 155 answerbox_t *callee; 156 int busy; 140 157 } phone_t; 141 158 … … 146 163 extern void ipc_call_sync(phone_t *phone, call_t *request); 147 164 extern void ipc_phone_destroy(phone_t *phone); 148 extern void ipc_phone_init(phone_t *phone, answerbox_t *box); 165 extern void ipc_phone_init(phone_t *phone); 166 extern void ipc_phone_connect(phone_t *phone, answerbox_t *box); 149 167 extern void ipc_call_free(call_t *call); 150 168 extern call_t * ipc_call_alloc(void); 151 169 extern void ipc_answerbox_init(answerbox_t *box); 152 extern void ipc_phone_init(phone_t *phone, answerbox_t *box);153 170 extern void ipc_call_init(call_t *call); 171 extern void ipc_forward(call_t *call, answerbox_t *newbox,answerbox_t *oldbox); 154 172 155 173 extern answerbox_t *ipc_phone_0; -
generic/include/ipc/sysipc.h
rd764ddc r2ba7810 44 44 __native sys_ipc_wait_for_call(ipc_data_t *calldata, task_id_t *taskid, 45 45 __native flags); 46 __native sys_ipc_connect_me_to(__native phoneid, __native arg1, 47 __native arg2); 48 __native sys_ipc_forward_fast(__native callid, __native phoneid, 49 __native method, __native arg1); 50 46 51 47 52 #endif -
generic/include/syscall/syscall.h
rd764ddc r2ba7810 41 41 SYS_IPC_ANSWER_FAST, 42 42 SYS_IPC_ANSWER, 43 SYS_IPC_FORWARD_FAST, 43 44 SYS_IPC_WAIT, 44 45 SYS_IPC_CONNECT_TO_ME, 46 SYS_IPC_CONNECT_ME_TO, 45 47 SYSCALL_END 46 48 } syscall_t;
Note:
See TracChangeset
for help on using the changeset viewer.
