Changeset addbce4 in mainline
- Timestamp:
- 2017-12-05T16:03:20Z (7 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 40fd6f0
- Parents:
- 9af1c61
- git-author:
- Jakub Jermar <jakub@…> (2017-12-05 11:59:18)
- git-committer:
- Jakub Jermar <jakub@…> (2017-12-05 16:03:20)
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
abi/include/abi/ipc/ipc.h
r9af1c61 raddbce4 38 38 /** Length of data being transfered with IPC call 39 39 * 40 * The uspace may not be able to utilize full length40 * The uspace may not be able to utilize the full length 41 41 * 42 42 */ … … 49 49 50 50 /** This is answer to a call */ 51 #define IPC_CALL_ANSWERED (1 << 0)51 #define IPC_CALL_ANSWERED (1 << 0) 52 52 53 53 /** Answer will not be passed to userspace, will be discarded */ … … 55 55 56 56 /** Call was forwarded */ 57 #define IPC_CALL_FORWARDED (1 << 2)57 #define IPC_CALL_FORWARDED (1 << 2) 58 58 59 59 /** Interrupt notification */ 60 #define IPC_CALL_NOTIF (1 << 3)60 #define IPC_CALL_NOTIF (1 << 3) 61 61 62 62 /** … … 65 65 */ 66 66 #define DATA_XFER_LIMIT (64 * 1024) 67 68 69 /** Bits used in call hashes.70 *71 * The addresses are aligned at least to 4 that is why we can use the 2 least72 * significant bits of the call address.73 *74 */75 76 /** Type of this call is 'answer' */77 #define IPC_CALLID_ANSWERED 178 79 /** Type of this call is 'notification' */80 #define IPC_CALLID_NOTIFICATION 281 67 82 68 /* Macros for manipulating calling data */ -
kernel/generic/src/ipc/sysipc.c
r9af1c61 raddbce4 775 775 call->data.phone = (void *) call->priv; 776 776 777 call->data.flags = IPC_CALL ID_NOTIFICATION;777 call->data.flags = IPC_CALL_NOTIF; 778 778 779 779 STRUCT_TO_USPACE(calldata, &call->data); … … 791 791 } 792 792 793 call->data.flags = IPC_CALL ID_ANSWERED;793 call->data.flags = IPC_CALL_ANSWERED; 794 794 795 795 STRUCT_TO_USPACE(calldata, &call->data); -
uspace/app/trace/ipcp.c
r9af1c61 raddbce4 323 323 pending_call_t *pcall; 324 324 325 if ((call->flags & IPC_CALL ID_ANSWERED) == 0 &&325 if ((call->flags & IPC_CALL_ANSWERED) == 0 && 326 326 hash != IPCP_CALLID_SYNC) { 327 327 /* Not a response */ -
uspace/lib/c/generic/async.c
r9af1c61 raddbce4 1338 1338 1339 1339 /* Kernel notification */ 1340 if ((chandle == CAP_NIL) && (call->flags & IPC_CALL ID_NOTIFICATION)) {1340 if ((chandle == CAP_NIL) && (call->flags & IPC_CALL_NOTIF)) { 1341 1341 fibril_t *fibril = (fibril_t *) __tcb_get()->fibril_data; 1342 1342 unsigned oldsw = fibril->switches; … … 1497 1497 } 1498 1498 1499 if (call.flags & IPC_CALL ID_ANSWERED)1499 if (call.flags & IPC_CALL_ANSWERED) 1500 1500 continue; 1501 1501 -
uspace/lib/c/generic/ipc.c
r9af1c61 raddbce4 264 264 265 265 /* Handle received answers */ 266 if ((chandle == CAP_NIL) && (call->flags & IPC_CALL ID_ANSWERED))266 if ((chandle == CAP_NIL) && (call->flags & IPC_CALL_ANSWERED)) 267 267 handle_answer(call); 268 268 … … 295 295 do { 296 296 chandle = ipc_wait_cycle(call, usec, SYNCH_FLAGS_NONE); 297 } while ((chandle == CAP_NIL) && (call->flags & IPC_CALL ID_ANSWERED));297 } while ((chandle == CAP_NIL) && (call->flags & IPC_CALL_ANSWERED)); 298 298 299 299 return chandle; … … 317 317 chandle = ipc_wait_cycle(call, SYNCH_NO_TIMEOUT, 318 318 SYNCH_FLAGS_NON_BLOCKING); 319 } while ((chandle == CAP_NIL) && (call->flags & IPC_CALL ID_ANSWERED));319 } while ((chandle == CAP_NIL) && (call->flags & IPC_CALL_ANSWERED)); 320 320 321 321 return chandle;
Note:
See TracChangeset
for help on using the changeset viewer.