mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-02-10 20:19:07 +00:00
At present, crosvm can support handle RDMSR in userspace by read MSR of Host directly. This is the RDMSR passthrough in userpace. This patch adds more MSR handler support, including: - WRMSR passthrough: write the corresponding MSR of Host directly in userspace; The control of MSR will work on host; - RDMSR emulation: crosvm uses a dummy MSR value to let Guest reads on. This value can be different with real MSR of Host; - WRMSR emulation: crosvm uses a dummy MSR value to let Guest writes into. This means the control of MSR won't really work (on Host). BUG=b:225375705 TEST=Set `--userspace-msr=0x1a2,type=r,action=pass,from=cpu0` Change-Id: I3276dd651464ef7b695e2ddd433793d59128af9b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3575508 Reviewed-by: Junichi Uekawa <uekawa@chromium.org> Tested-by: kokoro <noreply+kokoro@google.com> Commit-Queue: Junichi Uekawa <uekawa@chromium.org>
30 lines
806 B
TOML
30 lines
806 B
TOML
[package]
|
|
name = "x86_64"
|
|
version = "0.1.0"
|
|
authors = ["The Chromium OS Authors"]
|
|
edition = "2021"
|
|
|
|
[features]
|
|
gdb = ["gdbstub_arch", "arch/gdb"]
|
|
direct = []
|
|
|
|
[dependencies]
|
|
arch = { path = "../arch" }
|
|
anyhow = "*"
|
|
assertions = { path = "../common/assertions" }
|
|
data_model = { path = "../common/data_model" }
|
|
devices = { path = "../devices" }
|
|
gdbstub_arch = { version = "0.2.2", optional = true }
|
|
hypervisor = { path = "../hypervisor" }
|
|
kernel_cmdline = { path = "../kernel_cmdline" }
|
|
kernel_loader = { path = "../kernel_loader" }
|
|
libc = "*"
|
|
minijail = "*"
|
|
remain = "*"
|
|
resources = { path = "../resources" }
|
|
sync = { path = "../common/sync" }
|
|
thiserror = "*"
|
|
base = { path = "../base" }
|
|
acpi_tables = {path = "../acpi_tables" }
|
|
vm_control = { path = "../vm_control" }
|
|
vm_memory = { path = "../vm_memory" }
|