crosvm/common
Quentin Perret 2620380106 Revert "vm-memory: mlock2(MLOCK_ONFAULT) guest memory for protected VMs"
This reverts commit b975546c3f.

Reason for revert: mlock is insufficient to prevent migration/compacting of guest memory, and therefore pKVM has been modified to perform pinning in the kernel, making the mlock call superfluous.

Original change's description:
> vm-memory: mlock2(MLOCK_ONFAULT) guest memory for protected VMs
>
> By default, the memory of a protected VM is inaccessible to the host
> and crosvm. Consequently, attempts to access guest memory are fatal and
> must be avoided in order for the guest to run.
>
> Mlock guest pages as they are faulted in for protected VMs, ensuring
> that the host doesn't try to age or swap them out as a result of memory
> pressure.
>
> Bug: b:204298056
> Test: cargo test on x86 and arm64
> Cc: Quentin Perret <qperret@google.com>
> Cc: Andrew Walbran <qwandor@google.com>
> Signed-off-by: Will Deacon <willdeacon@google.com>
> Change-Id: I618ec1e8b1136a47a8b3ef563e45bc41d75ab517
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3257689
> Tested-by: kokoro <noreply+kokoro@google.com>
> Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>

Bug: b:204298056
Change-Id: Ibdcc579805c47adf35412b732829c074ce038471
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3310884
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Quentin Perret <qperret@google.com>
Auto-Submit: Quentin Perret <qperret@google.com>
Reviewed-by: Will Deacon <willdeacon@google.com>
Reviewed-by: Andrew Walbran <qwandor@google.com>
Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>
2021-12-02 11:28:53 +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 Revert "vm-memory: mlock2(MLOCK_ONFAULT) guest memory for protected VMs" 2021-12-02 11:28:53 +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 Revert "vm-memory: mlock2(MLOCK_ONFAULT) guest memory for protected VMs" 2021-12-02 11:28:53 +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