Expand description
Linux io_uring execution of independent descriptor reads, writes and fsyncs.
connect returns a client implementing vfsi_core::Vfsi and
vfsi_core::VfsiExt. The local backend retains namespace resolution,
descriptor ownership, bounded directory paging and ordered dependent I/O.
Open/close, path writes, append, overlapping writes, and namespace operations
use ordinary syscalls. This is synchronous batching, not an async runtime,
direct I/O or zero-copy API. Completion order never changes result order.
Opt-in cache-read and syscall-write paths avoid ring overhead for warm
buffered I/O. Their counters are separate from actual SQEs and CQEs.
Owned read cohorts fitting the configured byte window use their final result
allocations directly. Borrowed destinations and larger cohorts retain
bounded scratch storage; neither path is kernel zero-copy.
Ring setup failures (including sandbox/seccomp restrictions) are returned; there is no silent fallback to a different backend.
Structs§
- Options
- Bounds both in-flight SQEs and the reusable owned scratch arena. No SQPOLL thread is started. A large operation is split into bounded contiguous chunks.
- Stats
- Cumulative execution counters; a snapshot may span an ongoing operation.
- Telemetry
Functions§
- connect
- Construct a VFSI client rooted at an existing directory.
Configure
vfsi_core::api::ResourceLimitson the returned client to change application allocation/traversal budgets. - connect_
with_ telemetry - Like
connect, retaining low-cost counters for actual submissions, completions, waves, ring entries, arena growths and peak scratch bytes. Ring counters do not include syscalls. Opt-in cache probes and descriptor syscall requests have separate counters; namespace/dependency fallbacks remain excluded.