diff --git a/src/bin/proxmox_restore_daemon/api.rs b/src/bin/proxmox_restore_daemon/api.rs index f1d601ce..5aeb69f3 100644 --- a/src/bin/proxmox_restore_daemon/api.rs +++ b/src/bin/proxmox_restore_daemon/api.rs @@ -275,7 +275,11 @@ fn extract( bail!("file or directory {:?} does not exist", path); } - let (mut writer, reader) = tokio::io::duplex(1024 * 64); + // FIXME: DuplexStream is currently broken and doesn't wake pending writers on close, i.e. + // this doesn't drop the WatchdogInhibitor if we encounter an error (client aborts, etc...) + // see: https://github.com/tokio-rs/tokio/pull/3756 + // let (mut writer, reader) = tokio::io::duplex(1024 * 64); + let (mut writer, reader) = tokio::net::UnixStream::pair()?; if pxar { tokio::spawn(async move {