Rev |
Age |
Author |
Path |
Log message |
Diff |
3478 |
5893 d 5 h |
decky |
/branches/arm/ |
new arm branch |
|
3438 |
5903 d 4 h |
svoboda |
/trunk/ |
Merge syscall tracer (trace) and relevant part of udebug interface from tracing to trunk. |
|
3344 |
5930 d 21 h |
jermar |
/trunk/uspace/lib/libc/generic/ |
Change ipc_share_{in|out}_start() to use the async framework. |
|
3334 |
5935 d 1 h |
jermar |
/trunk/uspace/lib/libc/generic/ |
Let ipc_data_{read|write}_start() use the async framework. |
|
2820 |
6065 d 17 h |
decky |
/trunk/uspace/lib/libc/generic/ |
fix copy-paste typo |
|
2678 |
6163 d 23 h |
jermar |
/trunk/uspace/ |
The IPC_M_SHARE_* and IPC_M_DATA_* calls pass through 3 stages. Rename the send,
receive and deliver wrappers to names ending with 'start', 'receive' and
'finalize', respectively. This should make it clearer for dummies. |
|
2677 |
6163 d 23 h |
jermar |
/trunk/ |
Rename IPC_M_AS_AREA_SEND to IPC_M_SHARE_OUT. Rename IPC_M_AS_AREA_RECV to
IPC_M_SHARE_IN. Provide user-friendly wrappers for these methods so that even
dummies can get it right. Some applications using simpler protocols still use
these methods directly. |
|
2676 |
6164 d 6 h |
jermar |
/trunk/ |
Simplify the IPC_M_DATA_WRITE protocol. Do not pass the source address space
virtual address to the recipient. This feature was not used anyway. Now
IPC_M_DATA_WRITE and IPC_M_DATA_READ are feature-aligned. |
|
2663 |
6171 d 18 h |
jermar |
/trunk/uspace/ |
Reimplement VFS_READ using IPC_M_DATA_READ. |
|
2662 |
6171 d 19 h |
jermar |
/trunk/ |
Add support for IPC_M_DATA_READ calls. |
|
2660 |
6171 d 20 h |
jermar |
/trunk/ |
Rename IPC_M_DATA_SEND to IPC_M_DATA_WRITE. Now, when we also add
IPC_M_DATA_READ, it will not clash and cause confusion with userspace wrappers
such as ipc_data_receive(). Rename the forementioned wrappers to
ipc_data_write_send(), ipc_data_write_receive() and ipc_data_write_deliver(). |
|
2637 |
6190 d 20 h |
cejka |
/trunk/ |
Extended IPC_M_CONNECT_TO_ME to use 3 user defined parameters.
Phone identifier is passed in ARG5. |
|
2636 |
6192 d 19 h |
jermar |
/trunk/ |
Update comments wrt the previous commit.
Minor formatting fixes. |
|
2635 |
6192 d 20 h |
cejka |
/trunk/ |
Function ipc_connect_me_to sends 3 user defined arguments now.
One argument added also to ipc_forward_fast.
Fixed devmap and improved its test. |
|
2622 |
6201 d 2 h |
jermar |
/trunk/ |
Add mode argument to IPC forward.
This argument can be used to modify the way forward behaves. |
|
2620 |
6203 d 7 h |
jermar |
/trunk/ |
Be more deterministic when a user accidently uses fast version of IPC
call/answer instead of the full one and passes fewer arguments than required by
the recipient of the call/response.
and the recipient interprets arguments that
were actually not passed by the sender. |
|
2619 |
6204 d 18 h |
jermar |
/trunk/ |
Modify ipc_answer_*() to make use of all six syscall arguments. The recommended
means of answering calls is via the ipc_answer_m() macros (where m denotes the
number of return arguments) that automatically decide between the fast register
version or the slow universal version of ipc_answer(). |
|
2618 |
6205 d 7 h |
jermar |
/trunk/ |
Modify asynchronous IPC to make use of all six syscall arguments. The preferred
means of asynchronous communication is now via the set of ipc_call_async_m()
macros, where m is the number of payload arguments passed to the kernel. These
macros will automatically decide between the fast and the universal slow version
of ipc_call_async. |
|
2615 |
6206 d 4 h |
jermar |
/trunk/ |
Modify synchronous IPC to make use of all six syscall arguments. The preferred
means of synchronous communication is now via the set of ipc_call_sync_m_n()
macros, where m is the number of payload arguments passed to the kernel and n is
the number of return values. These macros will automatically decide between the
fast and the universal slow version of ipc_call_sync. |
|
2568 |
6253 d 9 h |
jermar |
/trunk/uspace/ |
Rename fibril_schedule_next_adv() to fibril_switch(). Rename
fibril_schedule_next() to fibril_yield(). Some fibril structures could be
uninitialized, set them to zero in fibril_setup(). For some fibrils, the stack
member can be NULL (e.g. every thread's first/main fibril); don't do free on
these stacks when cleaning up after a dead fibril. |
|