History log of /fuchsia/zircon/docs/syscalls/channel_call.md
Revision Date Author Comments
# 99387274 23-Jul-2018 George Kulakowski <kulakowski@google.com>

[docs][syscalls] Add TODOs about documenting system call rights

ZX-2399 #comment

Test: no functional change
Change-Id: I1f285c677e2444fcf1d720d7ecbd9f490c303962


# 013973ad 26-Jun-2018 Doug Evans <dje@google.com>

[docs][syscalls] Clarify ZX_ERR_NO_MEMORY as eventually going away

Not touched:
vmo_op_range.md
vmo_set_size.md
vmo_write.md
The current text is ok for these.

ZX-2303 #comment patch

Tested: Just doc changes, read before/after.

Change-Id: I2c6e1039e2b205e9cc377b9888755fa7ac676c78


# 53a24913 21-Jun-2018 Adam Barth <abarth@chromium.org>

[syscalls] Remove read_status from zx_channel_call

This parameter no longer has a purpose. Also, remove ZX_ERR_CALL_FAILED.
This status code no longer has a purpose.

Test: No behavior change
Change-Id: I71945ea9d1d6d591a20476106df1e598dfaf97b1


# 11b16c13 19-Jun-2018 Adam Barth <abarth@chromium.org>

[syscalls] zx_channel_call should always consume handles

Previously, whether zx_channel_call consumed handles depended on whether
it succeeded or failed.

ZX-2204 #comment

Test: utest/core/channel

Change-Id: Ic7b1149a85a1a892144479ee2f543fc7fedc6114


# 78cab495 23-Apr-2018 Brian Swetland <swetland@google.com>

[syscall][channel_call] use kernel allocated txids

This removes the need for channel_call() users to generate unique
txids for each channel_call() invocation. Instead, the kernel will
allocate a suitable txid in the 0x80000000..0xFFFFFFFF space (leaving
0..0x7FFFFFFF for userspace message processors to use when doing
such "calls" via channel_write() in a non-conflicing manner)

Update unit tests to deal with the new reality.

Change-Id: If4483df60179320c4f75ae1fe77f46035859fcc4


# bfc17f20 03-Jan-2018 William Hesse <whesse@google.com>

Fix typo in channel_call documentation

Bug:
Change-Id: I514783a6b6771f0b38c951608421a24f2122879a


# f3e2126c 12-Sep-2017 Roland McGrath <mcgrathr@google.com>

[zx] Magenta -> Zircon

The Great Renaming is here!

Change-Id: I3229bdeb2a3d0e40fb4db6fec8ca7d971fbffb94


# 3a40d9f8 19-Jun-2017 Mark Seaborn <mseaborn@google.com>

[docs] Fix grammar nit in use of "any"

"any of *handles* are..." sounds odd. This is complicated by the
convention that a variable name noun phrase is usually singular (an
example is the sentence "*handles* is a variable of pointer type").

Resolve any ambiguity here by saying "any element in *handles*".

Change-Id: I36b3579805043967c2b89c59e5858c00377ca6f8


# 514612d3 15-Jun-2017 Mark Seaborn <mseaborn@google.com>

Fix spelling of "occurred"

Change-Id: Id50ee3b87e1712558790aa44b99737a5961122da


# 4e0f8792 09-Jun-2017 George Kulakowski <kulakowski@google.com>

[docs][errors] Rename all the errors in docs/ to MX_OK and MX_ERR_*

Change-Id: I62451456a83145760c6454a619d4c699ce8e9017


# b6321543 12-Apr-2017 Todd Eisenberger <teisenbe@google.com>

[syscalls] Switch all syscall interfaces to deadlines

Change-Id: If1c2540b7aa3d16e8080551100b19fb1a067be8c


# 501e830e 12-Apr-2017 Brian Swetland <swetland@google.com>

[errors] stop using deprecated ERR_HANDLE_CLOSED

Instead use ERR_CANCELED, its new name.

Change-Id: I2671a6eded761b6b06737c93b3289c2b8a46d8bd


# 1bb8a330 15-Feb-2017 George Kulakowski <kulakowski@google.com>

[magenta][errors] Rename ERR_REMOTE_CLOSED to ERR_PEER_CLOSED

This error, at least at the Magenta syscall level, is really about
peers. This new name aligns with the MX_*_PEER_CLOSED signals. And
REMOTE implies a distance or asymmetry that isn't necessarily true.

This leaves a compatibility alias for the old name in place until the
rest of Fuchsia can be cleaned up.

Change-Id: Icf95003b2813270d865c6876b62e21d9f5b8c0f6


# 203e623b 10-Mar-2017 George Kulakowski <kulakowski@google.com>

[types][transaction] Name the transaction ID type.

We've discussed potentially moving this to 8 bytes as part of the
FIDLv2.0 work.

Change-Id: I510064cfe231cda09163759d9b4247682d8300e9


# 7e86f15c 24-Feb-2017 George Kulakowski <kulakowski@google.com>

[syscalls] Uniformally use "options" rather than "flags" as a syscall parameter name

With the exception of the VMAR syscalls which really do want to talk
about map_flags.

Part of MG-559

Change-Id: I51673de824b4072990f01724a3bf522a9a84f4f4


# d4ba06df 23-Feb-2017 George Kulakowski <kulakowski@google.com>

[docs][syscalls] Fix all the manpages

Change-Id: Ie9ba25060f3331de8d9c178caf6332fb48fc80f5


# 0c9d6f13 09-Feb-2017 Brian Swetland <swetland@google.com>

[syscalls] rename mx_handle_wait_*() to mx_object_wait_*()

These act on the object the handle refers to, not the handle itself.

Compatibility wrappers are provided to ensure existing code
continues to compile, link, and run. Later we will deprecate
the wrappers and eventually remove them.

Change-Id: Icf69e75f7e0c060ba6026343f9d26ff9da4317d9


# ec865bb3 13-Jan-2017 Brian Swetland <swetland@google.com>

[magenta][syscalls] implement mx_channel_call()

This is a fused write-wait-read syscall for the use of synchronous rpc
callers. The kernel treats the first uint32_t of the outbound message
as a transaction ID and accepts an inbound message with a matching txid
as a reply, completing the transaction.

This allows multi-threaded calling of synchronous rpc transports
with no userspace bookkeeping required and will provide an opportunity
for smarter scheduling of such transactions in the future.

Change-Id: Ifbb92b36618ebf13a6e52c650d16fed9f5071c3a