Dan Gohman
Dan Gohman
Addressing the feedback from the meeting today, I've now added a mechanism by which C source code can interpret the safety checks as assertions, with a mechanism for enabling and...
### Checking argument vector sizes > However, for consistency with all other places in the API, please don’t pass the size as a separate parameter, but package it up as...
Is there any update here? I know there's a lot going on; I'm mainly just trying to get a sense of what to expect here.
Friendly ping!
Yes, "flush" here isn't about `O_DIRECT` or `TCP_NODELAY` or `MSG_MORE` or `fsync` or `fdatasync` or similar things at the host OS level. Imagine a `write` that takes a `list` argument....
> I understand how the distinct `check_write` & `write` methods eliminate unnecessary cross-component copies. But it's still not clear to me what role `flush` plays here. Purely looking at the...
Socket writes can fail with `ECONNRESET` and possibly other things at the host OS, so it would seem they still need to be flushed at wasi-io to implement POSIX behavior.
Guest code doesn't know what kind of output-stream it has, even if it created the stream with `accept` or similar, because wasi-sockets could be virtualized by something that's using a...
The intended way to do this is to request a pollable from wasi:clocks/monotonic-clock, such as [`subscribe-instant`](https://github.com/WebAssembly/wasi-clocks/blob/main/wit/monotonic-clock.wit#L33) or [`subscribe_duration`](https://github.com/WebAssembly/wasi-clocks/blob/main/wit/monotonic-clock.wit#L39), and add that to the list passed to `poll_list`.
Ah, to answer your question, no, we haven't looked at adding a timeout directly to `poll_list`. But if there are use cases where the extra host call per iteration is...