Expand description
Portable descriptor-chain, queue, and notification contracts.
This crate owns no guest addresses, mappings, ring layout, threads, or global runtime. Concrete transports retain those details and expose only validated chain metadata plus owned queue tokens.
Structs§
- ChainId
- Opaque queue-chain identity scoped to one reset epoch.
- ChainIo
- Borrowed regions and byte ports for one consumed device chain.
- Chain
Layout - Validated counts and byte totals for one flattened descriptor chain.
- Chain
Region - Direction and length of one flattened chain region, without an address or transport identity.
- Publish
Error - Failed driver publication that returns the unpublished chain for retry or reclamation.
- Published
Chain - Successful driver publication.
- Queue
Epoch - Monotonic queue-reset epoch used to reject stale chain operations.
- Queue
Size - Valid nonzero, power-of-two split-virtqueue size.
- Queue
State - Validated queue configuration and lifecycle snapshot.
- Reclaimed
Chain - Published driver chain reclaimed during reset without a used entry.
- Used
Chain - Driver-owned chain returned by used-ring consumption.
- Used
Length - Exact number of device-written bytes published with a used chain.
Enums§
- Byte
Access Error - Failure while accessing a validated transport byte region.
- Chain
Error - Failure to expose one consumed chain as validated byte ports.
- Chain
Layout Error - Failure to validate the device-specific flattened chain layout.
- Malformed
Chain - Structurally malformed descriptor-chain classification.
- Notification
Hint - Whether the peer should be notified after a publication operation.
- Notification
Recheck - Result of atomically enabling notifications and rechecking queue state.
- Publish
Error Kind - Pre-publication failure classification.
- Queue
Config Error - Invalid queue configuration.
- Queue
Error - Portable queue operation failure.
- Region
Direction - Direction of one flattened descriptor-backed byte region.
Constants§
- MAX_
SPLIT_ QUEUE_ SIZE - Maximum queue size permitted by the split-ring index representation.
Traits§
- Device
Chain - Consumed device-side descriptor chain.
- Device
Queue - Device-side available-ring consumption and completion publication.
- Driver
Chain Buffer - Driver-owned byte access for one unpublished or reclaimed descriptor chain.
- Driver
Queue - Driver-side descriptor publication and used-ring consumption.
- Queue
Control - Queue configuration control plane.
- Queue
Port - Read-only state shared by driver, device, and configuration ports.
- Readable
Bytes - Bounded readable bytes exposed by a transport implementation.
- Writable
Bytes - Bounded writable bytes exposed by a transport implementation.
Functions§
- validate_
chain_ layout - Validate transport-neutral descriptor metadata before frame bytes are decoded.
Type Aliases§
- Chain
IoResult - Result of exposing one consumed chain as mapped byte ports.