mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2024-11-24 20:48:55 +00:00
b969ded8a5
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" }
|