crosvm/common
Daniel Verkamp 800f2bec5f data_model: inline endian conversions
The Le16/Le32/Le64 <-> u16/u32/u64 conversions should be no-ops on
little endian platforms, and even the big-endian conversions can be
efficiently implemented with a single byte-swap or MOVBE instruction in
most cases, so it should almost always be beneficial to inline the
conversion functions.

BUG=None
TEST=cargo build --release; view SplitQueue::add_used assembly

Change-Id: Ia028670e99f93754e729b3ff1fbdae2bcef74917
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/4679848
Reviewed-by: Zihan Chen <zihanchen@google.com>
Commit-Queue: Daniel Verkamp <dverkamp@chromium.org>
2023-07-12 23:10:51 +00:00
..
audio_streams clippy: Disallow new_without_default 2023-05-22 21:14:06 +00:00
balloon_control balloon: missing #[repr(C)] 2023-06-13 18:05:33 +00:00
data_model data_model: inline endian conversions 2023-07-12 23:10:51 +00:00
p9 crosvm: Deprecate DataInit 2023-07-12 21:34:20 +00:00
sync Fix remaining Chrome/Chromium OS instances 2023-01-03 22:14:30 +00:00
chromeos_warning.md Add version pin warning to common/ 2022-04-15 19:51:35 +00:00
README.md docs: Use mdformat to format markdown files 2022-01-27 21:29:11 +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