Go to file
Viresh Kumar 8c92046701 [i2c] Test descriptor processing
Add tests to validate processing of descriptors and read/write data.

The design is based on the virtio_queue::mock::MockSplitQueue
implementation, which is used to add a set of descriptors to the memory.
The same memory is then processed via DescriptorChain and the same set
of descriptors magically appear.

This patch adds various tests for success and failure and also validate
the data read or written.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
2021-11-25 16:22:53 +05:30
.cargo Initial commit 2021-05-26 10:18:40 +03:00
.github dependabot: Allow updating dependencies 2021-09-06 12:54:53 +05:30
rust-vmm-ci@aee82cf0a4 build(deps): bump rust-vmm-ci from b037be3 to aee82cf 2021-11-08 04:08:17 +00:00
src/i2c [i2c] Test descriptor processing 2021-11-25 16:22:53 +05:30
.gitignore Add .gitignore 2021-08-19 09:52:14 +03:00
.gitmodules Initial commit 2021-05-26 10:18:40 +03:00
Cargo.lock [i2c] Test descriptor processing 2021-11-25 16:22:53 +05:30
Cargo.toml Convert to virtual manifest and add i2c workspace 2021-08-19 09:52:14 +03:00
CODEOWNERS CODEOWNERS: add myself an Mathieu to aid review 2021-11-09 10:02:30 +02:00
coverage_config_x86_64.json [i2c] Test descriptor processing 2021-11-25 16:22:53 +05:30
LICENSE-APACHE Initial commit 2021-05-26 10:18:40 +03:00
README.md README.md: document aim for separating concerns 2021-11-09 10:02:30 +02:00

vhost-device

Design

This repository hosts various 'vhost-user' device backends in their own crates. See their individual README.md files for specific information about those crates.

Here is the list of device backends that we support:

Separation of Concerns

The binaries built by this repository can be run with any VMM which can act as a vhost-user master. Typically they have been tested with QEMU although the rust-vmm project does provide a vhost-user master crate for rust based VMMs.

While it's possible to implement all parts of the backend inside the vhost-device workspace consideration should be given to separating the VirtQueue handling and response logic to a crate in vm-virtio devices. This way a monolithic rust-vmm VMM implementation can reuse the core logic to service the virtio requests directly in the application.