Subversion Repositories HelenOS

Rev

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

Rev 2619 Rev 2620
Line 375... Line 375...
375
    ipc_call_static_init(&call);
375
    ipc_call_static_init(&call);
376
    IPC_SET_METHOD(call.data, method);
376
    IPC_SET_METHOD(call.data, method);
377
    IPC_SET_ARG1(call.data, arg1);
377
    IPC_SET_ARG1(call.data, arg1);
378
    IPC_SET_ARG2(call.data, arg2);
378
    IPC_SET_ARG2(call.data, arg2);
379
    IPC_SET_ARG3(call.data, arg3);
379
    IPC_SET_ARG3(call.data, arg3);
-
 
380
    /*
-
 
381
     * To achieve deterministic behavior, zero out arguments that are beyond
-
 
382
     * the limits of the fast version.
-
 
383
     */
-
 
384
    IPC_SET_ARG4(call.data, 0);
-
 
385
    IPC_SET_ARG5(call.data, 0);
380
 
386
 
381
    if (!(res = request_preprocess(&call))) {
387
    if (!(res = request_preprocess(&call))) {
382
        ipc_call_sync(phone, &call);
388
        ipc_call_sync(phone, &call);
383
        process_answer(&call);
389
        process_answer(&call);
384
    } else {
390
    } else {
Line 475... Line 481...
475
    IPC_SET_METHOD(call->data, method);
481
    IPC_SET_METHOD(call->data, method);
476
    IPC_SET_ARG1(call->data, arg1);
482
    IPC_SET_ARG1(call->data, arg1);
477
    IPC_SET_ARG2(call->data, arg2);
483
    IPC_SET_ARG2(call->data, arg2);
478
    IPC_SET_ARG3(call->data, arg3);
484
    IPC_SET_ARG3(call->data, arg3);
479
    IPC_SET_ARG4(call->data, arg4);
485
    IPC_SET_ARG4(call->data, arg4);
-
 
486
    /*
-
 
487
     * To achieve deterministic behavior, zero out arguments that are beyond
-
 
488
     * the limits of the fast version.
-
 
489
     */
-
 
490
    IPC_SET_ARG5(call->data, 0);
480
 
491
 
481
    if (!(res = request_preprocess(call)))
492
    if (!(res = request_preprocess(call)))
482
        ipc_call(phone, call);
493
        ipc_call(phone, call);
483
    else
494
    else
484
        ipc_backsend_err(phone, call, res);
495
        ipc_backsend_err(phone, call, res);
Line 621... Line 632...
621
    IPC_SET_RETVAL(call->data, retval);
632
    IPC_SET_RETVAL(call->data, retval);
622
    IPC_SET_ARG1(call->data, arg1);
633
    IPC_SET_ARG1(call->data, arg1);
623
    IPC_SET_ARG2(call->data, arg2);
634
    IPC_SET_ARG2(call->data, arg2);
624
    IPC_SET_ARG3(call->data, arg3);
635
    IPC_SET_ARG3(call->data, arg3);
625
    IPC_SET_ARG4(call->data, arg4);
636
    IPC_SET_ARG4(call->data, arg4);
-
 
637
    /*
-
 
638
     * To achieve deterministic behavior, zero out arguments that are beyond
-
 
639
     * the limits of the fast version.
-
 
640
     */
-
 
641
    IPC_SET_ARG5(call->data, 0);
626
    rc = answer_preprocess(call, saveddata ? &saved_data : NULL);
642
    rc = answer_preprocess(call, saveddata ? &saved_data : NULL);
627
 
643
 
628
    ipc_answer(&TASK->answerbox, call);
644
    ipc_answer(&TASK->answerbox, call);
629
    return rc;
645
    return rc;
630
}
646
}