Changeset 95a47b0 in mainline
- Timestamp:
- 2019-02-06T13:25:12Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- ab87db5
- Parents:
- fafb8e5
- git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2019-02-02 14:30:19)
- git-committer:
- Jiří Zárevúcky <zarevucky.jiri@…> (2019-02-06 13:25:12)
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
abi/include/abi/ipc/ipc.h
rfafb8e5 r95a47b0 36 36 #define ABI_IPC_IPC_H_ 37 37 38 #include <stdint.h> 38 39 #include <abi/proc/task.h> 39 40 #include <abi/cap.h> 41 #include <_bits/errno.h> 40 42 41 43 /** Length of data being transferred with IPC call … … 71 73 */ 72 74 #define DATA_XFER_LIMIT (64 * 1024) 73 74 /* Macros for manipulating calling data */75 #define ipc_set_retval(data, retval) ((data)->args[0] = (sysarg_t) (retval))76 #define ipc_set_imethod(data, val) ((data)->args[0] = (val))77 #define ipc_set_arg1(data, val) ((data)->args[1] = (val))78 #define ipc_set_arg2(data, val) ((data)->args[2] = (val))79 #define ipc_set_arg3(data, val) ((data)->args[3] = (val))80 #define ipc_set_arg4(data, val) ((data)->args[4] = (val))81 #define ipc_set_arg5(data, val) ((data)->args[5] = (val))82 83 #define ipc_get_imethod(data) ((data)->args[0])84 #define ipc_get_retval(data) ((errno_t) (data)->args[0])85 86 #define ipc_get_arg1(data) ((data)->args[1])87 #define ipc_get_arg2(data) ((data)->args[2])88 #define ipc_get_arg3(data) ((data)->args[3])89 #define ipc_get_arg4(data) ((data)->args[4])90 #define ipc_get_arg5(data) ((data)->args[5])91 75 92 76 /* Forwarding flags. */ … … 128 112 } ipc_data_t; 129 113 114 /* Functions for manipulating calling data */ 115 116 static inline void ipc_set_retval(ipc_data_t *data, errno_t retval) 117 { 118 data->args[0] = (sysarg_t) retval; 119 } 120 121 static inline void ipc_set_imethod(ipc_data_t *data, sysarg_t val) 122 { 123 data->args[0] = val; 124 } 125 126 static inline void ipc_set_arg1(ipc_data_t *data, sysarg_t val) 127 { 128 data->args[1] = val; 129 } 130 131 static inline void ipc_set_arg2(ipc_data_t *data, sysarg_t val) 132 { 133 data->args[2] = val; 134 } 135 136 static inline void ipc_set_arg3(ipc_data_t *data, sysarg_t val) 137 { 138 data->args[3] = val; 139 } 140 141 static inline void ipc_set_arg4(ipc_data_t *data, sysarg_t val) 142 { 143 data->args[4] = val; 144 } 145 146 static inline void ipc_set_arg5(ipc_data_t *data, sysarg_t val) 147 { 148 data->args[5] = val; 149 } 150 151 static inline sysarg_t ipc_get_imethod(ipc_data_t *data) 152 { 153 return data->args[0]; 154 } 155 static inline errno_t ipc_get_retval(ipc_data_t *data) 156 { 157 return (errno_t) data->args[0]; 158 } 159 160 static inline sysarg_t ipc_get_arg1(ipc_data_t *data) 161 { 162 return data->args[1]; 163 } 164 165 static inline sysarg_t ipc_get_arg2(ipc_data_t *data) 166 { 167 return data->args[2]; 168 } 169 170 static inline sysarg_t ipc_get_arg3(ipc_data_t *data) 171 { 172 return data->args[3]; 173 } 174 175 static inline sysarg_t ipc_get_arg4(ipc_data_t *data) 176 { 177 return data->args[4]; 178 } 179 180 static inline sysarg_t ipc_get_arg5(ipc_data_t *data) 181 { 182 return data->args[5]; 183 } 184 130 185 #endif 131 186 -
uspace/lib/c/generic/async/server.c
rfafb8e5 r95a47b0 656 656 } 657 657 658 ht_link_t *link = hash_table_find(¬ification_hash_table,659 &ipc_get_imethod(call));658 sysarg_t imethod = ipc_get_imethod(call); 659 ht_link_t *link = hash_table_find(¬ification_hash_table, &imethod); 660 660 if (!link) { 661 661 /* Invalid notification. */
Note:
See TracChangeset
for help on using the changeset viewer.