commit | 02829da5fd99da9965bbb9c6d00962f32f2508a8 | [log] [tgz] |
---|---|---|
author | A. Cody Schuffelen <schuffelen@google.com> | Sat Jun 17 01:43:27 2023 -0700 |
committer | A. Cody Schuffelen <schuffelen@google.com> | Sat Jun 17 01:43:27 2023 -0700 |
tree | 00728d1f178833841f27cbaf691b91edf0e478a9 | |
parent | 2cd328fdf17c1bf0f979bf4c728538f6edb0761e [diff] |
BACKPORT: Add `--core-scheduling` flag gating interaction with PR_SCHED_CORE On Android CI we observe performance regressions when crosvm takes advantage of the PR_SCHED_CORE feature. We are somewhat oversubscribed on CPUs, in some cases running a Cuttlefish Android VM with --cpus=4 and an OpenWRT VM with --cpus=1 next to some other host processes on cloud instances with 2 cores and 4 hyperthreads. In this case we would prefer not to lose cpu time to the scheduler blocking off hyperthreads when either VM claims complete cores to itself. In this case we are intending to fall back to the default state of "all processes trust each other", mentioned under "Trust model" on https://www.kernel.org/doc/html/next/admin-guide/hw-vuln/core-scheduling.html `--core-scheduling` defaults to true, so there is no behavioral change for existing users. Bug: b/280660768 Test: `crosvm start --core-scheduling=false` from Cuttlefish launcher script Change-Id: Id154790c16b7d9f81aff1f189468959fb5fa7259 Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/4602908 Reviewed-by: Frederick Mayle <fmayle@google.com> Reviewed-by: Dennis Kempin <denniskempin@google.com> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Commit-Queue: Cody Schuffelen <schuffelen@google.com> Merged-In: Id154790c16b7d9f81aff1f189468959fb5fa7259
crosvm is a virtual machine monitor (VMM) based on Linux’s KVM hypervisor, with a focus on simplicity, security, and speed. crosvm is intended to run Linux guests, originally as a security boundary for running native applications on the Chrome OS platform. Compared to QEMU, crosvm doesn’t emulate architectures or real hardware, instead concentrating on paravirtualized devices, such as the virtio standard.
crosvm is currently used to run Linux/Android guests on Chrome OS devices.