Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 2621 → Rev 2622

/trunk/uspace/lib/libc/include/ipc/ipc.h
258,7 → 258,7
extern int ipc_register_irq(int inr, int devno, int method, irq_code_t *code);
extern int ipc_unregister_irq(int inr, int devno);
extern int ipc_forward_fast(ipc_callid_t callid, int phoneid, int method,
ipcarg_t arg1);
ipcarg_t arg1, int mode);
extern int ipc_data_send(int phoneid, void *src, size_t size);
extern int ipc_data_receive(ipc_callid_t *callid, void **dst, size_t *size);
extern ipcarg_t ipc_data_deliver(ipc_callid_t callid, void *dst, size_t size);
/trunk/uspace/lib/libc/generic/ipc.c
646,6 → 646,7
* @param phoneid Phone handle to use for forwarding.
* @param method New method for the forwarded call.
* @param arg1 New value of the first argument for the forwarded call.
* @param mode Flags specifying mode of the forward operation.
*
* @return Zero on success or an error code.
*
655,9 → 656,10
* verbatim.
*/
int ipc_forward_fast(ipc_callid_t callid, int phoneid, int method,
ipcarg_t arg1)
ipcarg_t arg1, int mode)
{
return __SYSCALL4(SYS_IPC_FORWARD_FAST, callid, phoneid, method, arg1);
return __SYSCALL5(SYS_IPC_FORWARD_FAST, callid, phoneid, method, arg1,
mode);
}
 
/** Wrapper for making IPC_M_DATA_SEND calls.
/trunk/uspace/srv/ns/ns.c
212,7 → 212,8
return ENOENT;
}
hs = hash_table_get_instance(hlp, hashed_service_t, link);
return ipc_forward_fast(callid, hs->phone, IPC_GET_ARG2(*call), 0);
return ipc_forward_fast(callid, hs->phone, IPC_GET_ARG2(*call), 0,
IPC_FF_NONE);
}
 
/** Compute hash index into NS hash table.
/trunk/uspace/srv/devmap/devmap.c
471,7 → 471,7
 
/* FIXME: is this correct method how to pass argument on forwarding ?*/
ipc_forward_fast(callid, dev->driver->phone, (ipcarg_t)(dev->handle),
0);
0, IPC_FF_NONE);
return;
}