crosvm/Cargo.lock

2539 lines
49 KiB
Text
Raw Normal View History

# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 3
[[package]]
name = "aarch64"
version = "0.1.0"
dependencies = [
"arch",
"base",
"cros_fdt",
"data_model",
"devices",
"gdbstub",
"gdbstub_arch",
"hypervisor",
"kernel_cmdline",
"kernel_loader",
"kvm",
"kvm_sys",
"libc",
"memoffset 0.6.5",
"minijail",
"remain",
"resources",
"sync",
"thiserror",
"vm_control",
"vm_memory",
]
[[package]]
name = "acpi_tables"
version = "0.1.0"
dependencies = [
"data_model",
"tempfile",
]
[[package]]
name = "aho-corasick"
version = "0.7.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
dependencies = [
"memchr",
]
[[package]]
name = "ansi_term"
version = "0.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
dependencies = [
"winapi",
]
[[package]]
name = "anti_tamper"
version = "0.1.0"
dependencies = [
"base",
]
[[package]]
name = "anyhow"
version = "1.0.58"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bb07d2053ccdbe10e2af2995a2f116c1330396493dc1269f6a91d0ae82e19704"
[[package]]
name = "arbitrary"
version = "1.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f44124848854b941eafdb34f05b3bcf59472f643c7e151eba7c2b69daa469ed5"
[[package]]
name = "arch"
version = "0.1.0"
dependencies = [
"acpi_tables",
"anyhow",
"base",
"cfg-if",
"cros_fdt",
"devices",
"gdbstub",
"gdbstub_arch",
"hypervisor",
"kernel_cmdline",
"libc",
"minijail",
"power_monitor",
"remain",
"resources",
"serde",
"serde_keyvalue",
"sync",
"thiserror",
"vm_control",
"vm_memory",
"winapi",
]
[[package]]
name = "argh"
version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a7e7e4aa7e40747e023c0761dafcb42333a9517575bbf1241747f68dd3177a62"
dependencies = [
"argh_derive",
"argh_shared",
]
[[package]]
name = "argh_derive"
version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "69f2bd7ff6ed6414f4e5521bd509bae46454bbd513801767ced3f21a751ab4bc"
dependencies = [
"argh_shared",
"heck",
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "argh_helpers"
version = "0.1.0"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "argh_shared"
version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "47253b98986dafc7a3e1cf3259194f1f47ac61abb57a57f46ec09e48d004ecda"
[[package]]
name = "async-task"
version = "4.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524"
[[package]]
name = "async-trait"
version = "0.1.56"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "96cf8829f67d2eab0b2dfa42c5d0ef737e0724e4a82b01b3e292456202b19716"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "atty"
version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
dependencies = [
"hermit-abi",
"libc",
"winapi",
]
[[package]]
name = "audio_streams"
version = "0.1.0"
dependencies = [
"async-trait",
"futures",
"remain",
"serde",
"thiserror",
]
[[package]]
name = "autocfg"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
[[package]]
name = "balloon_control"
version = "0.1.0"
dependencies = [
"serde",
]
[[package]]
name = "base"
version = "0.1.0"
dependencies = [
"audio_streams",
"base_event_token_derive",
"cfg-if",
"chrono",
"data_model",
"env_logger",
"libc",
"log",
"minijail",
"once_cell",
"protobuf",
"rand",
"regex",
"remain",
"serde",
"serde_json",
"smallvec",
"sync",
"tempfile",
"thiserror",
"uuid",
"win_util",
"winapi",
]
[[package]]
name = "base_event_token_derive"
version = "0.1.0"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "bindgen"
version = "0.60.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "062dddbc1ba4aca46de6338e2bf87771414c335f7b2f2036e8f3e9befebf88e6"
dependencies = [
"bitflags",
"cexpr",
"clang-sys",
"lazy_static",
"lazycell",
"peeking_take_while",
"proc-macro2",
"quote 1.0.21",
"regex",
"rustc-hash",
"shlex",
]
[[package]]
name = "bit_field"
version = "0.1.0"
dependencies = [
"bit_field_derive",
]
[[package]]
name = "bit_field_derive"
version = "0.1.0"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "bitflags"
version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "bitreader"
version = "0.3.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d84ea71c85d1fe98fe67a9b9988b1695bc24c0b0d3bfb18d4c510f44b4b09941"
dependencies = [
"cfg-if",
]
[[package]]
name = "broker_ipc"
version = "0.1.0"
dependencies = [
"anyhow",
"base",
"crash_report",
"metrics",
"serde",
]
[[package]]
name = "byteorder"
version = "1.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
[[package]]
name = "bytes"
version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f0b3de4a0c5e67e16066a0715723abd91edc2f9001d09c46e1dca929351e130e"
[[package]]
name = "cbindgen"
version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "51e3973b165dc0f435831a9e426de67e894de532754ff7a3f307c03ee5dec7dc"
dependencies = [
"clap",
"heck",
"indexmap",
"log",
"proc-macro2",
"quote 1.0.21",
"serde",
"serde_json",
"syn 1.0.103",
"tempfile",
"toml",
]
[[package]]
name = "cc"
version = "1.0.73"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
dependencies = [
"jobserver",
]
[[package]]
name = "cexpr"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
dependencies = [
"nom",
]
[[package]]
name = "cfg-if"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "chrono"
version = "0.4.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
dependencies = [
"libc",
"num-integer",
"num-traits",
"serde",
"time",
"winapi",
]
[[package]]
name = "clang-sys"
version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fa2e27ae6ab525c3d369ded447057bca5438d86dc3a68f6faafb8269ba82ebf3"
dependencies = [
"glob",
"libc",
"libloading",
]
[[package]]
name = "clap"
version = "2.34.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
dependencies = [
"ansi_term",
"atty",
"bitflags",
"strsim",
"textwrap",
"unicode-width",
"vec_map",
]
[[package]]
name = "const-sha1"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fb58b6451e8c2a812ad979ed1d83378caa5e927eef2622017a45f251457c2c9d"
[[package]]
name = "crash_report"
version = "0.1.0"
dependencies = [
"anyhow",
"base",
"serde",
"win_util",
]
[[package]]
name = "crc32fast"
version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
dependencies = [
"cfg-if",
]
[[package]]
name = "cros-codecs"
version = "0.1.0"
dependencies = [
"anyhow",
"bitreader",
"bytes",
"crc32fast",
"downcast-rs",
"enumn",
"libva",
"log",
"thiserror",
]
[[package]]
name = "cros_async"
version = "0.1.1"
dependencies = [
"anyhow",
"async-task",
"async-trait",
"audio_streams",
"base",
"cfg-if",
"data_model",
"futures",
"futures-executor",
"futures-util",
"intrusive-collections",
"io_uring",
"libc",
"once_cell",
"paste",
"pin-utils",
"remain",
"serde",
"serde_keyvalue",
"slab",
"smallvec",
"sync",
"tempfile",
"thiserror",
"win_util",
"winapi",
]
[[package]]
name = "cros_asyncv2"
version = "0.2.0"
dependencies = [
"anyhow",
"async-task",
"base",
"data_model",
"futures",
"futures-executor",
"futures-util",
"intrusive-collections",
"io-uring",
"libc",
"memoffset 0.6.5",
"mio",
"once_cell",
"slab",
"smallvec",
"sync",
"tempfile",
"thiserror",
]
[[package]]
name = "cros_fdt"
version = "0.1.0"
dependencies = [
"anyhow",
"remain",
"thiserror",
]
[[package]]
name = "cros_fuzz"
version = "0.1.0"
dependencies = [
"libfuzzer-sys",
"rand_core",
]
[[package]]
name = "cros_tracing"
version = "0.1.0"
[[package]]
name = "crossbeam-utils"
version = "0.8.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "51887d4adc7b564537b15adcfb307936f8075dfcd5f00dde9a9f1d29383682bc"
dependencies = [
"cfg-if",
"once_cell",
]
[[package]]
name = "crosvm"
version = "0.1.0"
dependencies = [
"aarch64",
"acpi_tables",
"anti_tamper",
"anyhow",
"arch",
"argh",
"argh_helpers",
"audio_streams",
"base",
"bit_field",
"broker_ipc",
"cc",
"cfg-if",
"crash_report",
"cros_async",
"cros_tracing",
"crosvm_cli",
"crosvm_plugin",
"ctrlc",
"data_model",
"devices",
"disk",
"document-features",
"enumn",
"futures",
"gdbstub",
"gdbstub_arch",
"gpu_display",
"hypervisor",
"kernel_cmdline",
"kernel_loader",
"kvm",
"kvm_sys",
"libc",
"libcras",
"log",
crosvm: add JSON configuration file support Add a new `--cfg` command-line parameter, which allows a single (for now) JSON configuration file to be specified and loaded as the base configuration for the VM, if the `config-file` feature is enabled (the default). Configuration options in the file can be overriden or extended by the regular command-line arguments. Typically, options that can be specified only once are overriden, and options that can be specified several times (like `--block`) are extended, allowing some devices of the same type to be declared in a configuration file and some more on the command-line. Due to a limitation in argh, which does not yet allow `Option<bool>` fields to be used as switches, merging more than a single configuration file is not reliable so we only support a single configuration file for now. This has been addressed upstream but not yet in a released version. Configuration file support for all the options of RunCommand increases the crosvm binary size compiled with the `chromeos` profile by 250KB. However, due to the currently limited set of options in the configuration file, the present CL increases the binary size by just 78KB. Without the `config-file` feature, this CL does not incur any binary size increase. Supported parameters as of this commit: * battery * block * executable-path * initrd * net * params * serial * socket BUG=b:218223240 TEST=`cargo run --features config-file -- run --cfg vm.json` boots the VM with parameters defined in vm.json. Change-Id: Ibb27556144ee766af81c178e5b94bd5117e102da Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3970368 Reviewed-by: Dennis Kempin <denniskempin@google.com> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Commit-Queue: Alexandre Courbot <acourbot@chromium.org> Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
2022-10-20 06:40:27 +00:00
"merge",
"metrics",
"minijail",
"net_util",
"once_cell",
"p9",
"prebuilts",
"protobuf",
"protos",
"rand",
"remain",
"resources",
"rutabaga_gfx",
"sandbox",
"scudo",
"serde",
"serde_json",
"serde_keyvalue",
"static_assertions",
"swap",
"sync",
"tempfile",
"terminal_size",
"thiserror",
"tube_transporter",
"uuid",
"vhost",
"vm_control",
"vm_memory",
"which",
"win_audio",
"win_util",
"winapi",
"x86_64",
]
[[package]]
name = "crosvm-fuzz"
version = "0.0.1"
dependencies = [
"base",
"cros_fuzz",
"data_model",
"devices",
"disk",
"fuse",
"hypervisor",
"kernel_loader",
"libc",
"rand",
"tempfile",
"usb_util",
"vm_memory",
]
[[package]]
name = "crosvm_cli"
version = "0.1.0"
dependencies = [
"anyhow",
"cfg-if",
"win_util",
"winapi",
]
[[package]]
name = "crosvm_control"
version = "0.1.0"
dependencies = [
"anyhow",
"base",
"cbindgen",
"libc",
"vm_control",
]
[[package]]
name = "crosvm_plugin"
version = "0.17.0"
dependencies = [
"base",
"kvm",
"kvm_sys",
"libc",
"protobuf",
"protos",
]
[[package]]
name = "ctrlc"
version = "3.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b37feaa84e6861e00a1f5e5aa8da3ee56d605c9992d33e082786754828e20865"
dependencies = [
"nix 0.24.2",
"winapi",
]
[[package]]
name = "data_model"
version = "0.1.0"
dependencies = [
"cfg-if",
"libc",
"remain",
"serde",
"static_assertions",
"thiserror",
"winapi",
]
[[package]]
name = "dbus"
version = "0.9.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6f8bcdd56d2e5c4ed26a529c5a9029f5db8290d433497506f958eae3be148eb6"
dependencies = [
"libc",
"libdbus-sys",
"winapi",
]
[[package]]
name = "derive-into-owned"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "576fce04d31d592013a5887ba8d9c3830adff329e5096d7e1eb5e8e61262ca62"
dependencies = [
"quote 0.3.15",
"syn 0.11.11",
]
[[package]]
name = "devices"
version = "0.1.0"
dependencies = [
"acpi_tables",
"anyhow",
"argh",
"async-task",
"audio_streams",
"balloon_control",
"base",
"bit_field",
"broker_ipc",
"bytes",
"cfg-if",
"chrono",
"crc32fast",
"cros-codecs",
"cros_async",
"cros_tracing",
"crosvm_cli",
"data_model",
"dbus",
"disk",
"downcast-rs",
"enumn",
"ffmpeg",
"fuse",
"futures",
"gpu_display",
"hypervisor",
"kvm_sys",
"libc",
"libcras",
"libva",
"libvda",
"linux_input_sys",
"memoffset 0.6.5",
"metrics",
"minijail",
"net_sys",
"net_util",
"num-traits",
"once_cell",
"p9",
"power_monitor",
"protobuf",
"protos",
"rand",
"regex",
"remain",
"resources",
"rutabaga_gfx",
"serde",
"serde_json",
"serde_keyvalue",
"smallvec",
"sync",
"system_api",
"tempfile",
"thiserror",
"tpm2",
"tube_transporter",
"usb_util",
"uuid",
"vfio_sys",
"vhost",
"virtio_sys",
"vm_control",
"vm_memory",
"vmm_vhost",
"win_audio",
"win_util",
"winapi",
]
[[package]]
name = "disk"
version = "0.1.0"
dependencies = [
"async-trait",
"base",
"cfg-if",
"crc32fast",
"cros_async",
"data_model",
"futures",
"libc",
"protobuf",
"protos",
"remain",
"serde",
"sync",
"tempfile",
"thiserror",
"uuid",
"vm_memory",
]
[[package]]
name = "document-features"
version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3267e1ade4f1f6ddd35fed44a04b6514e244ffeda90c6a14a9ee30f9c9fd7a1"
dependencies = [
"litrs",
]
[[package]]
name = "downcast-rs"
version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
[[package]]
name = "e2e_tests"
version = "0.1.0"
dependencies = [
"anyhow",
"arch",
"base",
"cfg-if",
"libc",
"prebuilts",
"rand",
"tempfile",
]
[[package]]
name = "either"
version = "1.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f107b87b6afc2a64fd13cac55fe06d6c8859f12d4b14cbcdd2c67d0976781be"
[[package]]
name = "enumn"
version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "052bc8773a98bd051ff37db74a8a25f00e6bfa2cbd03373390c72e9f7afbf344"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "env_logger"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b2cf0344971ee6c64c31be0d530793fba457d322dfec2810c453d0ef228f9c3"
dependencies = [
"atty",
"humantime",
"log",
"regex",
"termcolor",
]
gpu_display: upstream Windows implementation On Windows, we have to create a GUI thread that creates the window and retrieves window messages from the thread-specific message queue created by the system. All host events, such as window resizing and mouse and keyboard events, are sent in the form of window messages. Hence, we created these structs/traits to model it: - `Window`: Owns the handle of one window, and provides helper functions for operating on this window. - `HandleWindowMessage`: A trait implemented by the struct that processes host events. In our case, that is the surface. - `WindowMessageProcessor`: Holds one `Window` object and one `HandleWindowMessage` trait object. We only support one window for now. Once we support multi-windowing, there will be multiple processors. - `WindowMessageDispatcher`: A singleton, responsible for dispatching messages retrieved from the message queue to the targeted processor. - `WindowProcedureThread`: Wraps the GUI thread, retrieves messages from the message queue and forwards them to the dispatcher. It also provides helper functions for other threads to talk to the GUI thread. - `MessageRelayThread`: Relays service messages to the GUI thread. Main difference from other platforms: event devices are imported to the GUI thread, since all host events are processed there. BUG=b:213150276 TEST=presubmit Change-Id: I0aabf6adf8a9ff4b24375e9c7df7625b6f761c7a Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3834009 Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org> Commit-Queue: Pujun Lun <lunpujun@google.com>
2022-08-16 21:12:11 +00:00
[[package]]
name = "euclid"
version = "0.22.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b52c2ef4a78da0ba68fbe1fd920627411096d2ac478f7f4c9f3a54ba6705bade"
dependencies = [
"num-traits",
]
[[package]]
name = "fastrand"
version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499"
dependencies = [
"instant",
]
[[package]]
name = "ffmpeg"
version = "0.1.0"
dependencies = [
"anyhow",
"libc",
"pkg-config",
"thiserror",
]
[[package]]
name = "fnv"
version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
[[package]]
name = "fuse"
version = "0.1.0"
dependencies = [
"base",
"bitflags",
"crossbeam-utils",
"data_model",
"enumn",
"libc",
"remain",
"thiserror",
]
[[package]]
name = "futures"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e"
dependencies = [
"futures-channel",
"futures-core",
"futures-executor",
"futures-io",
"futures-sink",
"futures-task",
"futures-util",
]
[[package]]
name = "futures-channel"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010"
dependencies = [
"futures-core",
"futures-sink",
]
[[package]]
name = "futures-core"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3"
[[package]]
name = "futures-executor"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6"
dependencies = [
"futures-core",
"futures-task",
"futures-util",
"num_cpus",
]
[[package]]
name = "futures-io"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b"
[[package]]
name = "futures-macro"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "futures-sink"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868"
[[package]]
name = "futures-task"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a"
[[package]]
name = "futures-util"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a"
dependencies = [
"futures-channel",
"futures-core",
"futures-io",
"futures-macro",
"futures-sink",
"futures-task",
"memchr",
"pin-project-lite",
"pin-utils",
"slab",
]
[[package]]
name = "gdbstub"
version = "0.6.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "32c95766e0414f8bfc1d07055574c621b67739466d6ba516c4fef8e99d30d2e6"
dependencies = [
"bitflags",
"cfg-if",
"log",
"managed",
"num-traits",
"paste",
]
[[package]]
name = "gdbstub_arch"
version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eecb536c55c43593a00dde9074dbbdb0e81ce5f20dbca921400f8779c21dea9c"
dependencies = [
"gdbstub",
"num-traits",
]
[[package]]
name = "getrandom"
version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6"
dependencies = [
"cfg-if",
"libc",
"wasi 0.11.0+wasi-snapshot-preview1",
]
[[package]]
name = "glob"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
[[package]]
name = "gpu_display"
version = "0.1.0"
dependencies = [
gpu_display: upstream Windows implementation On Windows, we have to create a GUI thread that creates the window and retrieves window messages from the thread-specific message queue created by the system. All host events, such as window resizing and mouse and keyboard events, are sent in the form of window messages. Hence, we created these structs/traits to model it: - `Window`: Owns the handle of one window, and provides helper functions for operating on this window. - `HandleWindowMessage`: A trait implemented by the struct that processes host events. In our case, that is the surface. - `WindowMessageProcessor`: Holds one `Window` object and one `HandleWindowMessage` trait object. We only support one window for now. Once we support multi-windowing, there will be multiple processors. - `WindowMessageDispatcher`: A singleton, responsible for dispatching messages retrieved from the message queue to the targeted processor. - `WindowProcedureThread`: Wraps the GUI thread, retrieves messages from the message queue and forwards them to the dispatcher. It also provides helper functions for other threads to talk to the GUI thread. - `MessageRelayThread`: Relays service messages to the GUI thread. Main difference from other platforms: event devices are imported to the GUI thread, since all host events are processed there. BUG=b:213150276 TEST=presubmit Change-Id: I0aabf6adf8a9ff4b24375e9c7df7625b6f761c7a Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3834009 Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org> Commit-Queue: Pujun Lun <lunpujun@google.com>
2022-08-16 21:12:11 +00:00
"anyhow",
"base",
"cc",
"cfg-if",
"data_model",
gpu_display: upstream Windows implementation On Windows, we have to create a GUI thread that creates the window and retrieves window messages from the thread-specific message queue created by the system. All host events, such as window resizing and mouse and keyboard events, are sent in the form of window messages. Hence, we created these structs/traits to model it: - `Window`: Owns the handle of one window, and provides helper functions for operating on this window. - `HandleWindowMessage`: A trait implemented by the struct that processes host events. In our case, that is the surface. - `WindowMessageProcessor`: Holds one `Window` object and one `HandleWindowMessage` trait object. We only support one window for now. Once we support multi-windowing, there will be multiple processors. - `WindowMessageDispatcher`: A singleton, responsible for dispatching messages retrieved from the message queue to the targeted processor. - `WindowProcedureThread`: Wraps the GUI thread, retrieves messages from the message queue and forwards them to the dispatcher. It also provides helper functions for other threads to talk to the GUI thread. - `MessageRelayThread`: Relays service messages to the GUI thread. Main difference from other platforms: event devices are imported to the GUI thread, since all host events are processed there. BUG=b:213150276 TEST=presubmit Change-Id: I0aabf6adf8a9ff4b24375e9c7df7625b6f761c7a Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3834009 Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org> Commit-Queue: Pujun Lun <lunpujun@google.com>
2022-08-16 21:12:11 +00:00
"euclid",
"libc",
"linux_input_sys",
gpu_display: upstream Windows implementation On Windows, we have to create a GUI thread that creates the window and retrieves window messages from the thread-specific message queue created by the system. All host events, such as window resizing and mouse and keyboard events, are sent in the form of window messages. Hence, we created these structs/traits to model it: - `Window`: Owns the handle of one window, and provides helper functions for operating on this window. - `HandleWindowMessage`: A trait implemented by the struct that processes host events. In our case, that is the surface. - `WindowMessageProcessor`: Holds one `Window` object and one `HandleWindowMessage` trait object. We only support one window for now. Once we support multi-windowing, there will be multiple processors. - `WindowMessageDispatcher`: A singleton, responsible for dispatching messages retrieved from the message queue to the targeted processor. - `WindowProcedureThread`: Wraps the GUI thread, retrieves messages from the message queue and forwards them to the dispatcher. It also provides helper functions for other threads to talk to the GUI thread. - `MessageRelayThread`: Relays service messages to the GUI thread. Main difference from other platforms: event devices are imported to the GUI thread, since all host events are processed there. BUG=b:213150276 TEST=presubmit Change-Id: I0aabf6adf8a9ff4b24375e9c7df7625b6f761c7a Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3834009 Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org> Commit-Queue: Pujun Lun <lunpujun@google.com>
2022-08-16 21:12:11 +00:00
"metrics",
"num-traits",
"pkg-config",
"remain",
gpu_display: upstream Windows implementation On Windows, we have to create a GUI thread that creates the window and retrieves window messages from the thread-specific message queue created by the system. All host events, such as window resizing and mouse and keyboard events, are sent in the form of window messages. Hence, we created these structs/traits to model it: - `Window`: Owns the handle of one window, and provides helper functions for operating on this window. - `HandleWindowMessage`: A trait implemented by the struct that processes host events. In our case, that is the surface. - `WindowMessageProcessor`: Holds one `Window` object and one `HandleWindowMessage` trait object. We only support one window for now. Once we support multi-windowing, there will be multiple processors. - `WindowMessageDispatcher`: A singleton, responsible for dispatching messages retrieved from the message queue to the targeted processor. - `WindowProcedureThread`: Wraps the GUI thread, retrieves messages from the message queue and forwards them to the dispatcher. It also provides helper functions for other threads to talk to the GUI thread. - `MessageRelayThread`: Relays service messages to the GUI thread. Main difference from other platforms: event devices are imported to the GUI thread, since all host events are processed there. BUG=b:213150276 TEST=presubmit Change-Id: I0aabf6adf8a9ff4b24375e9c7df7625b6f761c7a Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3834009 Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org> Commit-Queue: Pujun Lun <lunpujun@google.com>
2022-08-16 21:12:11 +00:00
"serde",
"sync",
"thiserror",
gpu_display: upstream Windows implementation On Windows, we have to create a GUI thread that creates the window and retrieves window messages from the thread-specific message queue created by the system. All host events, such as window resizing and mouse and keyboard events, are sent in the form of window messages. Hence, we created these structs/traits to model it: - `Window`: Owns the handle of one window, and provides helper functions for operating on this window. - `HandleWindowMessage`: A trait implemented by the struct that processes host events. In our case, that is the surface. - `WindowMessageProcessor`: Holds one `Window` object and one `HandleWindowMessage` trait object. We only support one window for now. Once we support multi-windowing, there will be multiple processors. - `WindowMessageDispatcher`: A singleton, responsible for dispatching messages retrieved from the message queue to the targeted processor. - `WindowProcedureThread`: Wraps the GUI thread, retrieves messages from the message queue and forwards them to the dispatcher. It also provides helper functions for other threads to talk to the GUI thread. - `MessageRelayThread`: Relays service messages to the GUI thread. Main difference from other platforms: event devices are imported to the GUI thread, since all host events are processed there. BUG=b:213150276 TEST=presubmit Change-Id: I0aabf6adf8a9ff4b24375e9c7df7625b6f761c7a Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3834009 Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org> Commit-Queue: Pujun Lun <lunpujun@google.com>
2022-08-16 21:12:11 +00:00
"vm_control",
"win_util",
"winapi",
]
[[package]]
name = "hashbrown"
version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
[[package]]
name = "heck"
version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
dependencies = [
"unicode-segmentation",
]
[[package]]
name = "hermit-abi"
version = "0.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
dependencies = [
"libc",
]
[[package]]
name = "humantime"
version = "2.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
[[package]]
name = "hypervisor"
version = "0.1.0"
dependencies = [
"base",
"bit_field",
"bitflags",
"data_model",
"downcast-rs",
"enumn",
"fnv",
"gdbstub",
"gdbstub_arch",
"kvm",
"kvm_sys",
"libc",
"memoffset 0.6.5",
"once_cell",
"serde",
"sync",
"tempfile",
"thiserror",
"vm_memory",
"win_util",
"winapi",
]
[[package]]
name = "indexmap"
version = "1.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e"
dependencies = [
"autocfg",
"hashbrown",
]
[[package]]
name = "instant"
version = "0.1.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
dependencies = [
"cfg-if",
]
[[package]]
name = "intrusive-collections"
version = "0.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bfe531a7789d7120f3e17d4f3f2cd95f54418ba7354f60b7b622b6644a07888a"
dependencies = [
"memoffset 0.5.6",
]
[[package]]
name = "io-uring"
version = "0.5.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "00d78c9f2db2a9800dfd15c69543896dae2135112dde0d1944442e83da8ce23a"
dependencies = [
"bitflags",
"libc",
]
[[package]]
name = "io_uring"
version = "0.1.1"
dependencies = [
"base",
"data_model",
"libc",
"remain",
"sync",
"tempfile",
"thiserror",
]
[[package]]
name = "itoa"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "112c678d4050afce233f4f2852bb2eb519230b3cf12f33585275537d7e41578d"
[[package]]
name = "jobserver"
version = "0.1.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa"
dependencies = [
"libc",
]
[[package]]
name = "kernel_cmdline"
version = "0.1.0"
dependencies = [
"libc",
"remain",
"thiserror",
]
[[package]]
name = "kernel_loader"
version = "0.1.0"
dependencies = [
"base",
"data_model",
"libc",
"remain",
"resources",
"tempfile",
"thiserror",
"vm_memory",
]
[[package]]
name = "kvm"
version = "0.1.0"
dependencies = [
"base",
"data_model",
"kvm_sys",
"libc",
"sync",
"vm_memory",
]
[[package]]
name = "kvm_sys"
version = "0.1.0"
dependencies = [
"base",
"data_model",
"libc",
]
[[package]]
name = "lazy_static"
version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
[[package]]
name = "lazycell"
version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
[[package]]
name = "libc"
version = "0.2.126"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836"
[[package]]
name = "libcras"
version = "0.1.0"
dependencies = [
"audio_streams",
"serde",
]
[[package]]
name = "libdbus-sys"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c185b5b7ad900923ef3a8ff594083d4d9b5aea80bb4f32b8342363138c0d456b"
dependencies = [
"pkg-config",
]
[[package]]
name = "libfuzzer-sys"
version = "0.4.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae185684fe19814afd066da15a7cc41e126886c21282934225d9fc847582da58"
dependencies = [
"arbitrary",
"cc",
"once_cell",
]
[[package]]
name = "libloading"
version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd"
dependencies = [
"cfg-if",
"winapi",
]
[[package]]
name = "libslirp-sys"
version = "4.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2772370ce9b7fa05c7eae0bd033005e139a64d52cee498a7905b3eb5d243c5f4"
dependencies = [
"pkg-config",
]
[[package]]
name = "libudev"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ea626d3bdf40a1c5aee3bcd4f40826970cae8d80a8fec934c82a63840094dcfe"
dependencies = [
"libc",
"libudev-sys",
]
[[package]]
name = "libudev-sys"
version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324"
dependencies = [
"libc",
"pkg-config",
]
[[package]]
name = "libva"
version = "0.1.0"
dependencies = [
"anyhow",
"base",
"bitflags",
"crc32fast",
"libudev",
"pkg-config",
]
[[package]]
name = "libvda"
version = "0.1.0"
dependencies = [
"enumn",
"libc",
"pkg-config",
]
[[package]]
name = "linux_input_sys"
version = "0.1.0"
dependencies = [
"base",
"data_model",
"libc",
]
[[package]]
name = "litrs"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f9275e0933cf8bb20f008924c0cb07a0692fe54d8064996520bf998de9eb79aa"
[[package]]
name = "log"
version = "0.4.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
dependencies = [
"cfg-if",
]
[[package]]
name = "managed"
version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0ca88d725a0a943b096803bd34e73a4437208b6077654cc4ecb2947a5f91618d"
[[package]]
name = "memchr"
version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
[[package]]
name = "memoffset"
version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa"
dependencies = [
"autocfg",
]
[[package]]
name = "memoffset"
version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
dependencies = [
"autocfg",
]
crosvm: add JSON configuration file support Add a new `--cfg` command-line parameter, which allows a single (for now) JSON configuration file to be specified and loaded as the base configuration for the VM, if the `config-file` feature is enabled (the default). Configuration options in the file can be overriden or extended by the regular command-line arguments. Typically, options that can be specified only once are overriden, and options that can be specified several times (like `--block`) are extended, allowing some devices of the same type to be declared in a configuration file and some more on the command-line. Due to a limitation in argh, which does not yet allow `Option<bool>` fields to be used as switches, merging more than a single configuration file is not reliable so we only support a single configuration file for now. This has been addressed upstream but not yet in a released version. Configuration file support for all the options of RunCommand increases the crosvm binary size compiled with the `chromeos` profile by 250KB. However, due to the currently limited set of options in the configuration file, the present CL increases the binary size by just 78KB. Without the `config-file` feature, this CL does not incur any binary size increase. Supported parameters as of this commit: * battery * block * executable-path * initrd * net * params * serial * socket BUG=b:218223240 TEST=`cargo run --features config-file -- run --cfg vm.json` boots the VM with parameters defined in vm.json. Change-Id: Ibb27556144ee766af81c178e5b94bd5117e102da Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3970368 Reviewed-by: Dennis Kempin <denniskempin@google.com> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Commit-Queue: Alexandre Courbot <acourbot@chromium.org> Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
2022-10-20 06:40:27 +00:00
[[package]]
name = "merge"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "10bbef93abb1da61525bbc45eeaff6473a41907d19f8f9aa5168d214e10693e9"
dependencies = [
"merge_derive",
"num-traits",
]
[[package]]
name = "merge_derive"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "209d075476da2e63b4b29e72a2ef627b840589588e71400a25e3565c4f849d07"
dependencies = [
"proc-macro-error",
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "metrics"
version = "0.1.0"
dependencies = [
"anyhow",
"base",
"cfg-if",
"chrono",
"libc",
"proto_build_tools",
"protobuf",
"serde",
"serde_json",
"sync",
"win_util",
"winapi",
"wmi",
]
[[package]]
name = "minijail"
version = "0.2.3"
dependencies = [
"libc",
"minijail-sys",
]
[[package]]
name = "minijail-sys"
version = "0.0.13"
dependencies = [
"libc",
"pkg-config",
"which",
]
[[package]]
name = "minimal-lexical"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
[[package]]
name = "mio"
version = "0.7.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc"
dependencies = [
"libc",
"log",
"miow",
"ntapi",
"winapi",
]
[[package]]
name = "miow"
version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21"
dependencies = [
"winapi",
]
[[package]]
name = "net_sys"
version = "0.1.0"
dependencies = [
"base",
"libc",
]
[[package]]
name = "net_util"
version = "0.1.0"
dependencies = [
"anyhow",
"base",
"cfg-if",
"cros_async",
"data_model",
"libc",
"libslirp-sys",
"metrics",
"net_sys",
"pcap-file",
"prebuilts",
"remain",
"serde",
"serde_json",
"smallvec",
"thiserror",
"virtio_sys",
"winapi",
]
[[package]]
name = "nix"
version = "0.23.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9f866317acbd3a240710c63f065ffb1e4fd466259045ccb504130b7f668f35c6"
dependencies = [
"bitflags",
"cc",
"cfg-if",
"libc",
"memoffset 0.6.5",
]
[[package]]
name = "nix"
version = "0.24.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "195cdbc1741b8134346d515b3a56a1c94b0912758009cfd53f99ea0f57b065fc"
dependencies = [
"bitflags",
"cfg-if",
"libc",
]
[[package]]
name = "nom"
version = "7.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36"
dependencies = [
"memchr",
"minimal-lexical",
]
[[package]]
name = "ntapi"
version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c28774a7fd2fbb4f0babd8237ce554b73af68021b5f695a3cebd6c59bac0980f"
dependencies = [
"winapi",
]
[[package]]
name = "num-integer"
version = "0.1.45"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
dependencies = [
"autocfg",
"num-traits",
]
[[package]]
name = "num-traits"
version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
dependencies = [
"autocfg",
]
[[package]]
name = "num_cpus"
version = "1.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
dependencies = [
"hermit-abi",
"libc",
]
[[package]]
name = "once_cell"
version = "1.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "18a6dbe30758c9f83eb00cbea4ac95966305f5a7772f3f42ebfc7fc7eddbd8e1"
[[package]]
name = "p9"
version = "0.1.0"
dependencies = [
"libc",
"serde",
"wire_format_derive",
]
[[package]]
name = "paste"
version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc"
[[package]]
name = "pcap-file"
version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ad13fed1a83120159aea81b265074f21d753d157dd16b10cc3790ecba40a341"
dependencies = [
"byteorder",
"derive-into-owned",
"thiserror",
]
[[package]]
name = "peeking_take_while"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
[[package]]
name = "pin-project-lite"
version = "0.2.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
[[package]]
name = "pin-utils"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
[[package]]
name = "pkg-config"
version = "0.3.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
[[package]]
name = "power_monitor"
version = "0.1.0"
dependencies = [
"base",
"dbus",
"protobuf",
"protoc-rust",
"remain",
"thiserror",
]
[[package]]
name = "ppv-lite86"
version = "0.2.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872"
[[package]]
name = "prebuilts"
version = "0.1.0"
dependencies = [
"anyhow",
"cfg-if",
]
crosvm: add JSON configuration file support Add a new `--cfg` command-line parameter, which allows a single (for now) JSON configuration file to be specified and loaded as the base configuration for the VM, if the `config-file` feature is enabled (the default). Configuration options in the file can be overriden or extended by the regular command-line arguments. Typically, options that can be specified only once are overriden, and options that can be specified several times (like `--block`) are extended, allowing some devices of the same type to be declared in a configuration file and some more on the command-line. Due to a limitation in argh, which does not yet allow `Option<bool>` fields to be used as switches, merging more than a single configuration file is not reliable so we only support a single configuration file for now. This has been addressed upstream but not yet in a released version. Configuration file support for all the options of RunCommand increases the crosvm binary size compiled with the `chromeos` profile by 250KB. However, due to the currently limited set of options in the configuration file, the present CL increases the binary size by just 78KB. Without the `config-file` feature, this CL does not incur any binary size increase. Supported parameters as of this commit: * battery * block * executable-path * initrd * net * params * serial * socket BUG=b:218223240 TEST=`cargo run --features config-file -- run --cfg vm.json` boots the VM with parameters defined in vm.json. Change-Id: Ibb27556144ee766af81c178e5b94bd5117e102da Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3970368 Reviewed-by: Dennis Kempin <denniskempin@google.com> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Commit-Queue: Alexandre Courbot <acourbot@chromium.org> Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
2022-10-20 06:40:27 +00:00
[[package]]
name = "proc-macro-error"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [
"proc-macro-error-attr",
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
"version_check",
]
[[package]]
name = "proc-macro-error-attr"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"version_check",
]
[[package]]
name = "proc-macro2"
version = "1.0.47"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725"
dependencies = [
"unicode-ident",
]
[[package]]
name = "proto_build_tools"
version = "0.1.0"
dependencies = [
"protoc-rust",
]
[[package]]
name = "protobuf"
version = "2.27.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cf7e6d18738ecd0902d30d1ad232c9125985a3422929b16c65517b38adc14f96"
dependencies = [
"serde",
"serde_derive",
]
[[package]]
name = "protobuf-codegen"
version = "2.27.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aec1632b7c8f2e620343439a7dfd1f3c47b18906c4be58982079911482b5d707"
dependencies = [
"protobuf",
]
[[package]]
name = "protoc"
version = "2.27.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c2ef1dc036942fac2470fdb8a911f125404ee9129e9e807f3d12d8589001a38f"
dependencies = [
"log",
"which",
]
[[package]]
name = "protoc-rust"
version = "2.27.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1a9e315121c8e7e21396e940a3d27f92280a6d28e3931213bf6cbfea76c5cc94"
dependencies = [
"protobuf",
"protobuf-codegen",
"protoc",
"tempfile",
]
[[package]]
name = "protos"
version = "0.1.0"
dependencies = [
"kvm_sys",
"proto_build_tools",
"protobuf",
]
[[package]]
name = "qcow_utils"
version = "0.1.0"
dependencies = [
"base",
"disk",
"libc",
]
[[package]]
name = "quote"
version = "0.3.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
[[package]]
name = "quote"
version = "1.0.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
dependencies = [
"proc-macro2",
]
[[package]]
name = "rand"
version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
dependencies = [
"libc",
"rand_chacha",
"rand_core",
]
[[package]]
name = "rand_chacha"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
dependencies = [
"ppv-lite86",
"rand_core",
]
[[package]]
name = "rand_core"
version = "0.6.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
dependencies = [
"getrandom",
]
[[package]]
name = "redox_syscall"
version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "534cfe58d6a18cc17120fbf4635d53d14691c1fe4d951064df9bd326178d7d5a"
dependencies = [
"bitflags",
]
[[package]]
name = "regex"
version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b"
dependencies = [
"aho-corasick",
"memchr",
"regex-syntax",
]
[[package]]
name = "regex-syntax"
version = "0.6.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"
[[package]]
name = "remain"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c35270ea384ac1762895831cc8acb96f171468e52cec82ed9186f9416209fa4"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "remove_dir_all"
version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
dependencies = [
"winapi",
]
[[package]]
name = "resources"
version = "0.1.0"
dependencies = [
"base",
"libc",
"remain",
"serde",
"thiserror",
]
[[package]]
name = "rustc-hash"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
[[package]]
name = "rutabaga_gfx"
version = "0.1.0"
dependencies = [
"anyhow",
"base",
"cfg-if",
"data_model",
"libc",
"pkg-config",
"remain",
"serde",
"sync",
"thiserror",
]
[[package]]
name = "ryu"
version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695"
[[package]]
name = "sandbox"
version = "0.1.0"
dependencies = [
"anyhow",
"base",
"prebuilts",
"win_util",
"winapi",
]
[[package]]
name = "scudo"
version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "12bfcb1ca07a487406afea13bdb7a2f3cf88e67b39c20dfd64e1801909b5c688"
dependencies = [
"libc",
"scudo-proc-macros",
"scudo-sys",
]
[[package]]
name = "scudo-proc-macros"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b3267c900aee8fbc8451235b70c5e2dae96bb19110eabc325be5d5dfed8e7461"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "scudo-sys"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bcdbdfb28236bf083b47d0babb07e486bb003ed85011072b023ea4ed27760ddb"
dependencies = [
"cc",
"libc",
]
[[package]]
name = "serde"
version = "1.0.140"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fc855a42c7967b7c369eb5860f7164ef1f6f81c20c7cc1141f2a604e18723b03"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
version = "1.0.140"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6f2122636b9fe3b81f1cb25099fcf2d3f542cdb1d45940d56c713158884a05da"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "serde_json"
version = "1.0.82"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "82c2c1fdcd807d1098552c5b9a36e425e42e9fbd7c6a37a8425f390f781f7fa7"
dependencies = [
"itoa",
"ryu",
"serde",
]
[[package]]
name = "serde_keyvalue"
version = "0.1.0"
dependencies = [
"argh",
"nom",
"num-traits",
"remain",
"serde",
"serde_keyvalue_derive",
"thiserror",
]
[[package]]
name = "serde_keyvalue_derive"
version = "0.1.0"
dependencies = [
"argh",
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "shlex"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
[[package]]
name = "slab"
version = "0.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"
dependencies = [
"autocfg",
]
[[package]]
name = "smallvec"
version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2fd0db749597d91ff862fd1d55ea87f7855a744a8425a64695b6fca237d1dad1"
[[package]]
name = "static_assertions"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
[[package]]
name = "strsim"
version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
[[package]]
name = "swap"
version = "0.1.0"
dependencies = [
"anyhow",
"base",
"data_model",
"libc",
"minijail",
"remain",
"serde",
"serde_json",
"sync",
"tempfile",
"thiserror",
"userfaultfd",
"vm_memory",
]
[[package]]
name = "syn"
version = "0.11.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
dependencies = [
"quote 0.3.15",
"synom",
"unicode-xid",
]
[[package]]
name = "syn"
version = "1.0.103"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a864042229133ada95abf3b54fdc62ef5ccabe9515b64717bcb9a1919e59445d"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"unicode-ident",
]
[[package]]
name = "sync"
version = "0.1.99"
[[package]]
name = "synom"
version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
dependencies = [
"unicode-xid",
]
[[package]]
name = "system_api"
version = "0.1.0"
dependencies = [
"dbus",
"protobuf",
]
[[package]]
name = "tempfile"
version = "3.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4"
dependencies = [
"cfg-if",
"fastrand",
"libc",
"redox_syscall",
"remove_dir_all",
"winapi",
]
[[package]]
name = "termcolor"
version = "1.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
dependencies = [
"winapi-util",
]
[[package]]
name = "terminal_size"
version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "633c1a546cee861a1a6d0dc69ebeca693bf4296661ba7852b9d21d159e0506df"
dependencies = [
"libc",
"winapi",
]
[[package]]
name = "textwrap"
version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
dependencies = [
"unicode-width",
]
[[package]]
name = "thiserror"
version = "1.0.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bd829fe32373d27f76265620b5309d0340cb8550f523c1dda251d6298069069a"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
version = "1.0.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0396bc89e626244658bef819e22d0cc459e795a5ebe878e6ec336d1674a8d79a"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "time"
version = "0.1.44"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255"
dependencies = [
"libc",
"wasi 0.10.0+wasi-snapshot-preview1",
"winapi",
]
[[package]]
name = "toml"
version = "0.5.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
dependencies = [
"serde",
]
[[package]]
name = "tpm2"
version = "0.1.0"
dependencies = [
"tpm2-sys",
]
[[package]]
name = "tpm2-sys"
version = "0.1.0"
dependencies = [
"anyhow",
"pkg-config",
]
[[package]]
name = "tube_transporter"
version = "0.1.0"
dependencies = [
"base",
"data_model",
"rand",
"serde",
"serde_json",
"thiserror",
"win_util",
"winapi",
]
[[package]]
name = "unicode-ident"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "15c61ba63f9235225a22310255a29b806b907c9b8c964bcbd0a2c70f3f2deea7"
[[package]]
name = "unicode-segmentation"
version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99"
[[package]]
name = "unicode-width"
version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
[[package]]
name = "unicode-xid"
version = "0.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
[[package]]
name = "usb_sys"
version = "0.1.0"
dependencies = [
"base",
]
[[package]]
name = "usb_util"
version = "0.1.0"
dependencies = [
"base",
"data_model",
"libc",
"remain",
"static_assertions",
"thiserror",
"usb_sys",
]
[[package]]
name = "userfaultfd"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fee2cdd3f8bdd0b98d7aa9ace35e7214a71888229d60c1cd1cd71b7c09c089d0"
dependencies = [
"bitflags",
"cfg-if",
"libc",
"nix 0.23.1",
"thiserror",
"userfaultfd-sys",
]
[[package]]
name = "userfaultfd-sys"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d2cbcf2717fa856a7226499babbbccb07353ea2fc2b27defd38bd13b1227cc78"
dependencies = [
"bindgen",
"cc",
"cfg-if",
]
[[package]]
name = "uuid"
version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7"
dependencies = [
"getrandom",
"serde",
]
[[package]]
name = "vec_map"
version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
crosvm: add JSON configuration file support Add a new `--cfg` command-line parameter, which allows a single (for now) JSON configuration file to be specified and loaded as the base configuration for the VM, if the `config-file` feature is enabled (the default). Configuration options in the file can be overriden or extended by the regular command-line arguments. Typically, options that can be specified only once are overriden, and options that can be specified several times (like `--block`) are extended, allowing some devices of the same type to be declared in a configuration file and some more on the command-line. Due to a limitation in argh, which does not yet allow `Option<bool>` fields to be used as switches, merging more than a single configuration file is not reliable so we only support a single configuration file for now. This has been addressed upstream but not yet in a released version. Configuration file support for all the options of RunCommand increases the crosvm binary size compiled with the `chromeos` profile by 250KB. However, due to the currently limited set of options in the configuration file, the present CL increases the binary size by just 78KB. Without the `config-file` feature, this CL does not incur any binary size increase. Supported parameters as of this commit: * battery * block * executable-path * initrd * net * params * serial * socket BUG=b:218223240 TEST=`cargo run --features config-file -- run --cfg vm.json` boots the VM with parameters defined in vm.json. Change-Id: Ibb27556144ee766af81c178e5b94bd5117e102da Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3970368 Reviewed-by: Dennis Kempin <denniskempin@google.com> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Commit-Queue: Alexandre Courbot <acourbot@chromium.org> Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
2022-10-20 06:40:27 +00:00
[[package]]
name = "version_check"
version = "0.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
[[package]]
name = "vfio_sys"
version = "0.1.0"
dependencies = [
"base",
"data_model",
]
[[package]]
name = "vhost"
version = "0.1.0"
dependencies = [
"base",
"libc",
"net_util",
"remain",
"static_assertions",
"thiserror",
"virtio_sys",
"vm_memory",
]
[[package]]
name = "virtio_sys"
version = "0.1.0"
dependencies = [
"base",
"data_model",
]
[[package]]
name = "vm_control"
version = "0.1.0"
dependencies = [
"anyhow",
"balloon_control",
"base",
"cfg-if",
"data_model",
"gdbstub",
"gdbstub_arch",
"hypervisor",
"libc",
"remain",
"resources",
"rutabaga_gfx",
"serde",
"serde_json",
"serde_keyvalue",
"swap",
"sync",
"thiserror",
"vm_memory",
"winapi",
]
[[package]]
name = "vm_memory"
version = "0.1.0"
dependencies = [
"base",
"bitflags",
"cfg-if",
"cros_async",
"data_model",
"libc",
"remain",
"serde",
"thiserror",
]
[[package]]
name = "vmm_vhost"
version = "0.1.0"
dependencies = [
"anyhow",
"base",
"bitflags",
"cfg-if",
"data_model",
"libc",
"remain",
"serde",
"serde_json",
"tempfile",
"thiserror",
"tube_transporter",
]
[[package]]
name = "wasi"
version = "0.10.0+wasi-snapshot-preview1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
[[package]]
name = "wasi"
version = "0.11.0+wasi-snapshot-preview1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
[[package]]
name = "which"
version = "4.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c4fb54e6113b6a8772ee41c3404fb0301ac79604489467e0a9ce1f3e97c24ae"
dependencies = [
"either",
"lazy_static",
"libc",
]
[[package]]
name = "widestring"
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "17882f045410753661207383517a6f62ec3dbeb6a4ed2acce01f0728238d1983"
[[package]]
name = "win_audio"
version = "0.1.0"
dependencies = [
"anyhow",
"async-trait",
"audio_streams",
"base",
"cros_async",
"libc",
"metrics",
"once_cell",
"prebuilts",
"sync",
"thiserror",
"win_util",
"winapi",
"wio",
]
[[package]]
name = "win_util"
version = "0.1.0"
dependencies = [
"anyhow",
"enumn",
"libc",
"once_cell",
"serde",
"winapi",
"windows",
]
[[package]]
name = "winapi"
version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
dependencies = [
"winapi-i686-pc-windows-gnu",
"winapi-x86_64-pc-windows-gnu",
]
[[package]]
name = "winapi-i686-pc-windows-gnu"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
[[package]]
name = "winapi-util"
version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
dependencies = [
"winapi",
]
[[package]]
name = "winapi-x86_64-pc-windows-gnu"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
[[package]]
name = "windows"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a43e544233e20425d5a58e9671cf76d6aed9e6f211508c050facb29b188dc10f"
dependencies = [
"const-sha1",
"windows_gen",
"windows_macros",
]
[[package]]
name = "windows_gen"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bc6283570a39b3594e31c64a498f48058758cc063eb087d972bb6476ad134a16"
[[package]]
name = "windows_macros"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f757e7665f81f33ace9f89b0f0fc3a7c770e24ff4fa1475c6503bb35b4524893"
dependencies = [
"syn 1.0.103",
"windows_gen",
]
[[package]]
name = "wio"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5d129932f4644ac2396cb456385cbf9e63b5b30c6e8dc4820bdca4eb082037a5"
dependencies = [
"winapi",
]
[[package]]
name = "wire_format_derive"
version = "0.1.0"
dependencies = [
"proc-macro2",
"quote 1.0.21",
"syn 1.0.103",
]
[[package]]
name = "wmi"
version = "0.9.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "757a458f9bfab0542c11feed99bd492cbe23add50515bd8eecf8c6973673d32d"
dependencies = [
"chrono",
"log",
"serde",
"thiserror",
"widestring",
"winapi",
]
[[package]]
name = "x86_64"
version = "0.1.0"
dependencies = [
"acpi_tables",
"anyhow",
"arch",
"base",
"cfg-if",
"chrono",
"cros_fdt",
"data_model",
"devices",
"gdbstub_arch",
"hypervisor",
"kernel_cmdline",
"kernel_loader",
"libc",
"minijail",
"once_cell",
"remain",
"resources",
"sync",
"thiserror",
"vm_control",
"vm_memory",
]