crosvm/common
Keiichi Watanabe 3893a1dcbe audio_streams: Introduce SharedMemory trait for base::SharedMemory
Define `SharedMemory` trait, implement it for `base::SharedMemory`, and
use it for `ShmStreamSource::new_stream()` so that we can pass on
`base::SharedMemory` without exposing `base` to libcras.

Note that we implement the trait for `base::SharedMemory` in `base`
crate instead of in `audio_streams`, which means `base` depends on
`audio_streams`, because `audio_streams` is available for non-crosvm
projects while `base` isn't.

The corresponding CRAS change is crrev.com/c/3251123.

BUG=b:194137301, b:204444445
TEST=cargo test --all-features

Change-Id: I2430d9881d98032592c9f9202d70deb22e006f63
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3251820
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>
Reviewed-by: Chih-Yang Hsia <paulhsia@chromium.org>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2021-11-18 08:45:14 +00:00
..
assertions Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
audio_streams audio_streams: Introduce SharedMemory trait for base::SharedMemory 2021-11-18 08:45:14 +00:00
base audio_streams: Introduce SharedMemory trait for base::SharedMemory 2021-11-18 08:45:14 +00:00
cros-fuzz Clippy fixes in common/* crates 2021-11-15 23:08:55 +00:00
cros_async Clippy fixes in common/* crates 2021-11-15 23:08:55 +00:00
data_model Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
io_uring Clippy fixes in common/* crates 2021-11-15 23:08:55 +00:00
p9 Clippy fixes in common/* crates 2021-11-15 23:08:55 +00:00
sync Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
sys_util Clippy fixes in common/* crates 2021-11-15 23:08:55 +00:00
README.md Import cros-fuzz and p9 into crosvm/common 2021-08-03 02:25:01 +00:00

Crosvm General Purpose Libraries

The crates in this folder are general purpose libraries used by other projects in ChromeOS as well.

To make them accessible independendly of crosvm, each of these crates is excluded from the crosvm workspace.

List of libraries

  • cros-fuzz: Support crate for fuzzing rust code in ChromeOS
  • p9: Server implementation of the 9p file system protocol