diff options
author | Alyssa Ross <hi@alyssa.is> | 2020-06-02 03:03:26 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2020-06-14 11:23:24 +0000 |
commit | 28d9682698d287d14cbe67a0ed7acc1427add320 (patch) | |
tree | 669ed98d9b1388b553c8e0f0189678cc68dd4162 /arch | |
parent | 460406d10bbfaa890d56d616b4610813da63a312 (diff) | |
parent | 4264464153a7a788ef73c5015ac8bbde5f8ebe1c (diff) | |
download | crosvm-28d9682698d287d14cbe67a0ed7acc1427add320.tar crosvm-28d9682698d287d14cbe67a0ed7acc1427add320.tar.gz crosvm-28d9682698d287d14cbe67a0ed7acc1427add320.tar.bz2 crosvm-28d9682698d287d14cbe67a0ed7acc1427add320.tar.lz crosvm-28d9682698d287d14cbe67a0ed7acc1427add320.tar.xz crosvm-28d9682698d287d14cbe67a0ed7acc1427add320.tar.zst crosvm-28d9682698d287d14cbe67a0ed7acc1427add320.zip |
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'arch')
-rw-r--r-- | arch/Cargo.toml | 1 | ||||
-rw-r--r-- | arch/src/android.rs | 2 | ||||
-rw-r--r-- | arch/src/lib.rs | 2 | ||||
-rw-r--r-- | arch/src/serial.rs | 8 |
4 files changed, 10 insertions, 3 deletions
diff --git a/arch/Cargo.toml b/arch/Cargo.toml index 6b4e529..68b40a3 100644 --- a/arch/Cargo.toml +++ b/arch/Cargo.toml @@ -5,6 +5,7 @@ authors = ["The Chromium OS Authors"] edition = "2018" [dependencies] +acpi_tables = { path = "../acpi_tables" } devices = { path = "../devices" } io_jail = { path = "../io_jail" } kernel_cmdline = { path = "../kernel_cmdline" } diff --git a/arch/src/android.rs b/arch/src/android.rs index 5311d3f..a3242ab 100644 --- a/arch/src/android.rs +++ b/arch/src/android.rs @@ -36,7 +36,7 @@ pub fn create_android_fdt(fdt: &mut Vec<u8>, fstab: File) -> Result<()> { begin_node(fdt, "vendor")?; for vec in dtprop { let content = std::fs::read_to_string(&vec[2]).map_err(Error::FdtIoError)?; - property_string(fdt, &vec[1], &content); + property_string(fdt, &vec[1], &content)?; } end_node(fdt)?; // vendor begin_node(fdt, "fstab")?; diff --git a/arch/src/lib.rs b/arch/src/lib.rs index 3445f18..bab679a 100644 --- a/arch/src/lib.rs +++ b/arch/src/lib.rs @@ -16,6 +16,7 @@ use std::os::unix::io::AsRawFd; use std::path::PathBuf; use std::sync::Arc; +use acpi_tables::sdt::SDT; use devices::split_irqchip_common::GsiRelay; use devices::virtio::VirtioDevice; use devices::{ @@ -57,6 +58,7 @@ pub struct VmComponents { pub initrd_image: Option<File>, pub extra_kernel_params: Vec<String>, pub wayland_dmabuf: bool, + pub acpi_sdts: Vec<SDT>, } /// Holds the elements needed to run a Linux VM. Created by `build_vm`. diff --git a/arch/src/serial.rs b/arch/src/serial.rs index f24f4bc..b817cfd 100644 --- a/arch/src/serial.rs +++ b/arch/src/serial.rs @@ -4,7 +4,7 @@ use std::collections::BTreeMap; use std::fmt::{self, Display}; -use std::fs::File; +use std::fs::{File, OpenOptions}; use std::io::{self, stdin, stdout}; use std::os::unix::io::{AsRawFd, RawFd}; use std::path::PathBuf; @@ -170,7 +170,11 @@ impl SerialParameters { } SerialType::File => match &self.path { Some(path) => { - let file = File::create(path.as_path()).map_err(Error::FileError)?; + let file = OpenOptions::new() + .append(true) + .create(true) + .open(path.as_path()) + .map_err(Error::FileError)?; keep_fds.push(file.as_raw_fd()); Some(Box::new(file)) } |