Releases: rust-vmm/vm-virtio
Releases · rust-vmm/vm-virtio
virtio-queue-ser v0.4.1
- Update the virtio-queue dependency to v0.7.1. This release contains no
breaking changes.
virtio-vsock v0.2.1
Changes
VsockPacket::from_tx_virtq_chain
supports header and data on the same descriptorVsockPacket::from_rx_virtq_chain
supports header and data on the same descriptor
virtio-vsock v0.2.0
Added
- Derive
Eq
forpacket::PacketHeader
.
Changes
- Updated vm-memory to 0.10.0.
- Updated virtio-queue to 0.7.0.
- Upgrade Rust edition to 2021.
virtio-queue v0.7.0
v0.7.0
Changed
- Updated vmm-sys-util from 0.10.0 to 0.11.0.
- Updated vm-memory from 0.9.0 to 0.10.0.
virtio-queue-ser v0.4.0
Added
- Derived
Eq
forstate::QueueStateSer
.
Changed
- Updated vm-memory from 0.9.0 to 0.10.0.
- Updated virtio-queue from 0.6.1 to 0.7.0 and fix version to exactly 0.7.0 to ensure the crates
are always updated in lock-step. - Upgrade rust edition to 2021
virtio-queue-v0.6.1
v0.6.1
Fixed
- Return an error if the number of available descriptor chains exposed by the
driver exceeds the queue size. This way we avoid potential hanging and
Denial-of-Service in the VMM, that was possible before by iterating multiple
times over the same chains.
virtio-queue v0.6.0
v0.6.0
Added
- Derive
Eq
for structures that derivePartialEq
.
Changed
- Use
add_desc_chains
in tests - Update dependencies:
vm-memory
from0.8.0
to0.9.0
andlog
from0.4.6
to0.4.17
. - Upgrade to Rust 2021 edition.
virtio-queue-ser v0.3.0
v0.3.0
Changed
- Update the way that dependencies are pulled such that we don't end up with incompatible versions.
Removed
- Removed the
num_added
from the saved state. This is an implementation detail coming from the notification suppression feature, so it shouldn't be part of the state.
virtio-queue v0.5.0
v0.5.0
Added
- Added getters and setters for the Virtio Queue fields.
- Added the
state
method for retrieving theQueueState
of aQueue
.
Fixed
- Validate the state of the Virtio Queue when restoring from state and return errors on invalid
input.
Removed
- Removed the wrapper over the Virtio Queue that was wrapping the Guest Memory. VMMs can define this wrapper if needed, but this is no longer provided as part of virtio-queue crate so that the naming scheme can be simplified. As a consequence, a couple of functions now receive the memory as a parameter (more details in the Changed section).
- Removed
num_added
field from theQueueState
because this is an implementation detail of the notification suppression feature and thus should not be part of the state. - Removed
QueueGuard
andlock_with_memory
.
Changed
QueueState
is now renamed toQueue
.QueueStateSync
is now renamed toQueueSync
.- The
QueueState
structure now represents the state of theQueue
without any implementation details. This can be used for implementing save/restore. - Initializing a
Queue
now returns an error in case themax_size
is invalid. - The
Queue
fields are now private and can be updated only through the dedicated setters. - The following Queue methods now receive the memory as a parameter:
iter
,is_valid
,add_used
,needs_notification
,enable_notification
,disable_notification
,avail_idx
,used_idx
. - Use the constant definition from the
virtio-queue
crate.