diff --git a/src/uu/timeout/src/timeout.rs b/src/uu/timeout/src/timeout.rs
index 3c82c4be2..b671d9d3e 100644
--- a/src/uu/timeout/src/timeout.rs
+++ b/src/uu/timeout/src/timeout.rs
@@ -214,10 +214,6 @@ fn timeout(
}
}
Ok(None) => {
- if kill_after == Duration::new(0, 0) {
- // XXX: this may not be right
- return 124;
- }
if verbose {
show_error!("sending signal KILL to command '{}'", cmd[0]);
}
diff --git a/src/uucore/src/lib/features/process.rs b/src/uucore/src/lib/features/process.rs
index 975123cf7..cda41bb4f 100644
--- a/src/uucore/src/lib/features/process.rs
+++ b/src/uucore/src/lib/features/process.rs
@@ -93,6 +93,7 @@ pub trait ChildExt {
fn send_signal(&mut self, signal: usize) -> io::Result<()>;
/// Wait for a process to finish or return after the specified duration.
+ /// A `timeout` of zero disables the timeout.
fn wait_or_timeout(&mut self, timeout: Duration) -> io::Result