summary refs log tree commit diff
path: root/src/linux.rs
diff options
context:
space:
mode:
authorJakub Staron <jstaron@google.com>2019-04-11 11:43:39 -0700
committerchrome-bot <chrome-bot@chromium.org>2019-04-19 14:45:21 -0700
commitecf81e0f05e7221ec9ccd9b09691e83ccddc1109 (patch)
tree1fae117dfecec01ee15ce58565a7a8cb0dca5a1e /src/linux.rs
parent4b292afafcd44ca3fc34f483a8edb455a3212cb5 (diff)
downloadcrosvm-ecf81e0f05e7221ec9ccd9b09691e83ccddc1109.tar
crosvm-ecf81e0f05e7221ec9ccd9b09691e83ccddc1109.tar.gz
crosvm-ecf81e0f05e7221ec9ccd9b09691e83ccddc1109.tar.bz2
crosvm-ecf81e0f05e7221ec9ccd9b09691e83ccddc1109.tar.lz
crosvm-ecf81e0f05e7221ec9ccd9b09691e83ccddc1109.tar.xz
crosvm-ecf81e0f05e7221ec9ccd9b09691e83ccddc1109.tar.zst
crosvm-ecf81e0f05e7221ec9ccd9b09691e83ccddc1109.zip
Extracts DiskResize from VmRequest to a new type.
BUG=None
TEST=cargo test
TEST=cargo test --package msg_socket
TEST=cargo test --package devices
TEST=cargo test --package vm_control
TEST=tast -verbose run ${IP} vm.CrostiniStartEverything

Change-Id: Icf26f53d3fd813ab43b8f14079f90628d245eed7
Reviewed-on: https://chromium-review.googlesource.com/1565297
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Diffstat (limited to 'src/linux.rs')
-rw-r--r--src/linux.rs12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/linux.rs b/src/linux.rs
index 977f7bf..19cdf09 100644
--- a/src/linux.rs
+++ b/src/linux.rs
@@ -46,6 +46,7 @@ use sys_util::{
 use sys_util::{GuestAddress, MemoryMapping, Protection};
 use vhost;
 use vm_control::{
+    DiskControlCommand, DiskControlRequestSocket, DiskControlResponseSocket, DiskControlResult,
     UsbControlSocket, VmControlRequestSocket, VmControlResponseSocket, VmRequest, VmResponse,
     VmRunMode,
 };
@@ -280,7 +281,7 @@ type DeviceResult<T = VirtioDeviceStub> = std::result::Result<T, Error>;
 fn create_block_device(
     cfg: &Config,
     disk: &DiskOption,
-    disk_device_socket: VmControlResponseSocket,
+    disk_device_socket: DiskControlResponseSocket,
 ) -> DeviceResult {
     // Special case '/proc/self/fd/*' paths. The FD is already open, just use it.
     let raw_image: File = if disk.path.parent() == Some(Path::new("/proc/self/fd")) {
@@ -671,7 +672,7 @@ fn create_virtio_devices(
     _exit_evt: &EventFd,
     wayland_device_socket: VmControlRequestSocket,
     balloon_device_socket: UnixSeqpacket,
-    disk_device_sockets: &mut Vec<VmControlResponseSocket>,
+    disk_device_sockets: &mut Vec<DiskControlResponseSocket>,
 ) -> DeviceResult<Vec<VirtioDeviceStub>> {
     let mut devs = Vec::new();
 
@@ -771,7 +772,7 @@ fn create_devices(
     exit_evt: &EventFd,
     wayland_device_socket: VmControlRequestSocket,
     balloon_device_socket: UnixSeqpacket,
-    disk_device_sockets: &mut Vec<VmControlResponseSocket>,
+    disk_device_sockets: &mut Vec<DiskControlResponseSocket>,
     usb_provider: HostBackendDeviceProvider,
 ) -> DeviceResult<Vec<(Box<dyn PciDevice>, Option<Minijail>)>> {
     let stubs = create_virtio_devices(
@@ -1136,7 +1137,8 @@ pub fn run_config(cfg: Config) -> Result<()> {
     let disk_count = cfg.disks.len();
     for _ in 0..disk_count {
         let (disk_host_socket, disk_device_socket) =
-            msg_socket::pair::<VmRequest, VmResponse>().map_err(Error::CreateSocket)?;
+            msg_socket::pair::<DiskControlCommand, DiskControlResult>()
+                .map_err(Error::CreateSocket)?;
         disk_host_sockets.push(disk_host_socket);
         disk_device_sockets.push(disk_device_socket);
     }
@@ -1207,7 +1209,7 @@ fn run_control(
     control_server_socket: Option<UnlinkUnixSeqpacketListener>,
     mut control_sockets: Vec<VmControlResponseSocket>,
     balloon_host_socket: UnixSeqpacket,
-    disk_host_sockets: &[VmControlRequestSocket],
+    disk_host_sockets: &[DiskControlRequestSocket],
     usb_control_socket: UsbControlSocket,
     sigchld_fd: SignalFd,
     _render_node_host: RenderNodeHost,