diff options
author | Alyssa Ross <hi@alyssa.is> | 2020-07-06 16:16:41 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2020-07-06 16:22:26 +0000 |
commit | 7214f019550c6c8766b65c145640d34d5550db78 (patch) | |
tree | 5cd20c3a9da05c77af0fd665b1fb478be7e947cf /devices/src/virtio | |
parent | 6edc5d9773e7da699a2660dc6c22796421e065f6 (diff) | |
download | crosvm-7214f019550c6c8766b65c145640d34d5550db78.tar crosvm-7214f019550c6c8766b65c145640d34d5550db78.tar.gz crosvm-7214f019550c6c8766b65c145640d34d5550db78.tar.bz2 crosvm-7214f019550c6c8766b65c145640d34d5550db78.tar.lz crosvm-7214f019550c6c8766b65c145640d34d5550db78.tar.xz crosvm-7214f019550c6c8766b65c145640d34d5550db78.tar.zst crosvm-7214f019550c6c8766b65c145640d34d5550db78.zip |
devices: include path in SocketConnect error msg
Diffstat (limited to 'devices/src/virtio')
-rw-r--r-- | devices/src/virtio/wl.rs | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/devices/src/virtio/wl.rs b/devices/src/virtio/wl.rs index d21fa35..12f5012 100644 --- a/devices/src/virtio/wl.rs +++ b/devices/src/virtio/wl.rs @@ -316,7 +316,7 @@ enum WlError { NewAlloc(Error), NewPipe(Error), AllocSetSize(Error), - SocketConnect(io::Error), + SocketConnect { path: PathBuf, inner: io::Error }, SocketNonBlock(io::Error), VmControl(MsgError), VmBadResponse, @@ -342,7 +342,9 @@ impl Display for WlError { NewAlloc(e) => write!(f, "failed to create shared memory allocation: {}", e), NewPipe(e) => write!(f, "failed to create pipe: {}", e), AllocSetSize(e) => write!(f, "failed to set size of shared memory: {}", e), - SocketConnect(e) => write!(f, "failed to connect socket: {}", e), + SocketConnect { path, inner } => { + write!(f, "failed to connect socket at {:?}: {}", path, inner) + } SocketNonBlock(e) => write!(f, "failed to set socket as non-blocking: {}", e), VmControl(e) => write!(f, "failed to control parent VM: {}", e), VmBadResponse => write!(f, "invalid response from parent VM"), @@ -600,7 +602,11 @@ impl fmt::Debug for WlVfd { impl WlVfd { fn connect<P: AsRef<Path>>(path: P) -> WlResult<WlVfd> { - let socket = UnixStream::connect(path).map_err(WlError::SocketConnect)?; + let path = path.as_ref(); + let socket = UnixStream::connect(path).map_err(|e| WlError::SocketConnect { + path: path.to_path_buf(), + inner: e, + })?; let mut vfd = WlVfd::default(); vfd.socket = Some(socket); Ok(vfd) |