Subversion Repositories HelenOS

Rev

Rev 2522 | Rev 2531 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2522 Rev 2530
Line 187... Line 187...
187
/** Epilogue of ipc_call_async_*() functions.
187
/** Epilogue of ipc_call_async_*() functions.
188
 *
188
 *
189
 * @param callid    Value returned by the SYS_IPC_CALL_ASYNC_* syscall.
189
 * @param callid    Value returned by the SYS_IPC_CALL_ASYNC_* syscall.
190
 * @param phoneid   Phone handle through which the call was made.
190
 * @param phoneid   Phone handle through which the call was made.
191
 * @param call      async_call structure returned by ipc_prepare_async().
191
 * @param call      async_call structure returned by ipc_prepare_async().
192
 * @param can_preempt   If non-zero, the current pseudo thread can be preempted
192
 * @param can_preempt   If non-zero, the current fibril can be preempted in this
193
 *          in this call.
193
 *          call.
194
 */
194
 */
195
static inline void ipc_finish_async(ipc_callid_t callid, int phoneid,
195
static inline void ipc_finish_async(ipc_callid_t callid, int phoneid,
196
    async_call_t *call, int can_preempt)
196
    async_call_t *call, int can_preempt)
197
{
197
{
198
    if (!call) { /* Nothing to do regardless if failed or not */
198
    if (!call) { /* Nothing to do regardless if failed or not */
Line 248... Line 248...
248
 * @param method    Requested method.
248
 * @param method    Requested method.
249
 * @param arg1      Service-defined payload argument.
249
 * @param arg1      Service-defined payload argument.
250
 * @param arg2      Service-defined payload argument.
250
 * @param arg2      Service-defined payload argument.
251
 * @param private   Argument to be passed to the answer/error callback.
251
 * @param private   Argument to be passed to the answer/error callback.
252
 * @param callback  Answer or error callback.
252
 * @param callback  Answer or error callback.
253
 * @param can_preempt   If non-zero, the current pseudo thread will be preempted
253
 * @param can_preempt   If non-zero, the current fibril will be preempted in
254
 *          in case the kernel temporarily refuses to accept more
254
 *          case the kernel temporarily refuses to accept more
255
 *          asynchronous calls.
255
 *          asynchronous calls.
256
 */
256
 */
257
void ipc_call_async_2(int phoneid, ipcarg_t method, ipcarg_t arg1,
257
void ipc_call_async_2(int phoneid, ipcarg_t method, ipcarg_t arg1,
258
    ipcarg_t arg2, void *private, ipc_async_callback_t callback,
258
    ipcarg_t arg2, void *private, ipc_async_callback_t callback,
259
    int can_preempt)
259
    int can_preempt)
Line 300... Line 300...
300
 * @param arg1      Service-defined payload argument.
300
 * @param arg1      Service-defined payload argument.
301
 * @param arg2      Service-defined payload argument.
301
 * @param arg2      Service-defined payload argument.
302
 * @param arg3      Service-defined payload argument.
302
 * @param arg3      Service-defined payload argument.
303
 * @param private   Argument to be passed to the answer/error callback.
303
 * @param private   Argument to be passed to the answer/error callback.
304
 * @param callback  Answer or error callback.
304
 * @param callback  Answer or error callback.
305
 * @param can_preempt   If non-zero, the current pseudo thread will be preempted
305
 * @param can_preempt   If non-zero, the current fibril will be preempted in
306
 *          in case the kernel temporarily refuses to accept more
306
 *          case the kernel temporarily refuses to accept more
307
 *          asynchronous calls.
307
 *          asynchronous calls.
308
 *
308
 *
309
 */
309
 */
310
void ipc_call_async_3(int phoneid, ipcarg_t method, ipcarg_t arg1,
310
void ipc_call_async_3(int phoneid, ipcarg_t method, ipcarg_t arg1,
311
    ipcarg_t arg2, ipcarg_t arg3, void *private, ipc_async_callback_t callback,
311
    ipcarg_t arg2, ipcarg_t arg3, void *private, ipc_async_callback_t callback,