Changeset 085bd54 in mainline for libc/include
- Timestamp:
- 2006-06-06T15:16:08Z (20 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 63bb83e
- Parents:
- d7eafd8
- Location:
- libc/include
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
libc/include/async.h
rd7eafd8 r085bd54 38 38 typedef void (*async_client_conn_t)(ipc_callid_t callid, ipc_call_t *call); 39 39 40 int async_manager(void); 40 static inline void async_manager(void) 41 { 42 psthread_schedule_next_adv(PS_TO_MANAGER); 43 } 44 41 45 ipc_callid_t async_get_call_timeout(ipc_call_t *call, suseconds_t usecs); 42 46 static inline ipc_callid_t async_get_call(ipc_call_t *data) … … 58 62 * @return Return code of message 59 63 */ 60 static inline ipcarg_t sync_send_2(int phoneid, ipcarg_t method, ipcarg_t arg1, ipcarg_t arg2, ipcarg_t *r1, ipcarg_t *r2)64 static inline ipcarg_t async_req_2(int phoneid, ipcarg_t method, ipcarg_t arg1, ipcarg_t arg2, ipcarg_t *r1, ipcarg_t *r2) 61 65 { 62 66 ipc_call_t result; … … 71 75 return rc; 72 76 } 73 #define sync_send(phoneid, method, arg1, r1) sync_send_2(phoneid, method, arg1, 0, r1, 0)77 #define async_req(phoneid, method, arg1, r1) async_req_2(phoneid, method, arg1, 0, r1, 0) 74 78 75 static inline ipcarg_t sync_send_3(int phoneid, ipcarg_t method, ipcarg_t arg1,79 static inline ipcarg_t async_req_3(int phoneid, ipcarg_t method, ipcarg_t arg1, 76 80 ipcarg_t arg2, ipcarg_t arg3, ipcarg_t *r1, 77 81 ipcarg_t *r2, ipcarg_t *r3) … … 103 107 104 108 109 /* Primitve functions for IPC communication */ 110 void async_msg_3(int phoneid, ipcarg_t method, ipcarg_t arg1, ipcarg_t arg2, 111 ipcarg_t arg3); 112 void async_msg_2(int phoneid, ipcarg_t method, ipcarg_t arg1, ipcarg_t arg2); 113 #define async_msg(ph,m,a1) async_msg_2(ph,m,a1,0) 114 115 static inline void async_serialize_start(void) 116 { 117 psthread_inc_sercount(); 118 } 119 static inline void async_serialize_end(void) 120 { 121 psthread_dec_sercount(); 122 } 123 105 124 extern atomic_t async_futex; 106 107 125 #endif -
libc/include/ipc/ipc.h
rd7eafd8 r085bd54 82 82 extern int ipc_forward_fast(ipc_callid_t callid, int phoneid, int method, ipcarg_t arg1); 83 83 84 85 /* Primitve functions for IPC communication */86 void send_call_3(int phoneid, ipcarg_t method, ipcarg_t arg1, ipcarg_t arg2,87 ipcarg_t arg3);88 void send_call_2(int phoneid, ipcarg_t method, ipcarg_t arg1, ipcarg_t arg2);89 #define send_call(ph,m,a1) send_call_2(ph,m,a1,0)90 /* These functions never preempt */91 void nsend_call_3(int phoneid, ipcarg_t method, ipcarg_t arg1,92 ipcarg_t arg2, ipcarg_t arg3);93 void nsend_call_2(int phoneid, ipcarg_t method, ipcarg_t arg1, ipcarg_t arg2);94 #define nsend_call(ph,m,a1) nsend_call_2(ph,m,a1,0)95 96 84 #endif -
libc/include/psthread.h
rd7eafd8 r085bd54 41 41 #endif /* context_set */ 42 42 43 #define PSTHREAD_SERIALIZED 1 44 43 45 typedef enum { 44 46 PS_TO_MANAGER, 45 47 PS_FROM_MANAGER, 46 PS_PREEMPT 48 PS_PREEMPT, 49 PS_FROM_DEAD 47 50 } pschange_type; 48 51 … … 76 79 void psthread_remove_manager(void); 77 80 pstid_t psthread_get_id(void); 81 void psthread_inc_sercount(void); 82 void psthread_dec_sercount(void); 78 83 79 84 static inline int psthread_schedule_next() {
Note:
See TracChangeset
for help on using the changeset viewer.
