vhost-device/staging
Manos Pitsidianakis 2012d2198b video: don't needlessly clone Waker
Clippy complains about Option::take() called on a temporary value:

```text
error: called `Option::take()` on a temporary value
   --> vhost-device-video/src/stream.rs:125:30
    |
125 |         if let Some(waker) = self.waker().take() {
    |                              ^^^^^^^^^^^^^^^^^^^
    |
    = note: `waker` creates a temporary value, so calling take() has no effect
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_option_take
    = note: `-D clippy::needless-option-take` implied by `-D warnings`
    = help: to override `-D warnings` add `#[allow(clippy::needless_option_take)]`
```

But Waker is meant to be consumed when calling Waker::wake, so there's
no need to clone temporary values. Move the .wake() call inside
ResourceState's set_ready() method so we don't have to lock the mutex
again.

Signed-off-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
2025-04-03 14:07:42 +02:00
..
vhost-device-video video: don't needlessly clone Waker 2025-04-03 14:07:42 +02:00
.gitignore Add new workspace under staging/ subdirectory 2023-10-11 16:25:00 +05:30
Cargo.lock build(deps): bump the non-rust-vmm group across 2 directories with 46 updates 2025-04-03 11:41:01 +02:00
Cargo.toml Move vhost-user-gpu from staging to main directory 2025-02-14 10:15:52 +02:00
coverage_config_x86_64.json Move vhost-user-gpu from staging to main directory 2025-02-14 10:15:52 +02:00
README.md Add new workspace under staging/ subdirectory 2023-10-11 16:25:00 +05:30

vhost-device staging workspace

This directory includes a separate Cargo workspace to include working vhost-user backend implementations that concern devices that have partial functionality and devices (and/or functionality) not yet ratified in the VIRTIO specification. For more details about vhost-device you can refer to the repository README.

To add a new member crate:

  1. Place it under this directory, ./staging.
  2. Append its name in the workspace.members array field of the workspace manifest file.
  3. Update the crate list in the repository README.

Testing and Continuous Integration

Notice : The CI runs on the root workspace only. This means that staging crates can have failing tests and bring down code coverage without automatic checks. Tests can still be run locally as part of the development process. To add a crate to the CI, add it to the root Cargo.toml workspace.members array as well as the staging manifest.