diff options
author | David Tolnay <dtolnay@chromium.org> | 2018-12-03 10:46:45 -0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-12-04 00:11:32 -0800 |
commit | f5032762919ad6fcfd2436abb0ba6ddf73f237d3 (patch) | |
tree | 44ef7853049b32866816df6a489b09ce7595f70f /src/linux.rs | |
parent | 35bac991e674e8ff228e3da3f05984ff23a535dd (diff) | |
download | crosvm-f5032762919ad6fcfd2436abb0ba6ddf73f237d3.tar crosvm-f5032762919ad6fcfd2436abb0ba6ddf73f237d3.tar.gz crosvm-f5032762919ad6fcfd2436abb0ba6ddf73f237d3.tar.bz2 crosvm-f5032762919ad6fcfd2436abb0ba6ddf73f237d3.tar.lz crosvm-f5032762919ad6fcfd2436abb0ba6ddf73f237d3.tar.xz crosvm-f5032762919ad6fcfd2436abb0ba6ddf73f237d3.tar.zst crosvm-f5032762919ad6fcfd2436abb0ba6ddf73f237d3.zip |
linux: Print all siginfo structs on ChildSignal
I noticed this questionable loop that never loops in CL:1357700. Purely guessing as to what it was supposed to do -- I have not tested this codepath. TEST=cargo check Change-Id: I4560b80f080112a78adf440a663341f4fb0f1070 Reviewed-on: https://chromium-review.googlesource.com/1359010 Commit-Ready: David Tolnay <dtolnay@chromium.org> Tested-by: David Tolnay <dtolnay@chromium.org> Reviewed-by: Stephen Barber <smbarber@chromium.org>
Diffstat (limited to 'src/linux.rs')
-rw-r--r-- | src/linux.rs | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/src/linux.rs b/src/linux.rs index f50cda5..56ec9ab 100644 --- a/src/linux.rs +++ b/src/linux.rs @@ -933,19 +933,16 @@ fn run_control( } Token::ChildSignal => { // Print all available siginfo structs, then exit the loop. - loop { - let result = sigchld_fd.read().map_err(Error::SignalFd)?; - if let Some(siginfo) = result { - error!( - "child {} died: signo {}, status {}, code {}", - siginfo.ssi_pid, - siginfo.ssi_signo, - siginfo.ssi_status, - siginfo.ssi_code - ); - } - break 'poll; + while let Some(siginfo) = sigchld_fd.read().map_err(Error::SignalFd)? { + error!( + "child {} died: signo {}, status {}, code {}", + siginfo.ssi_pid, + siginfo.ssi_signo, + siginfo.ssi_status, + siginfo.ssi_code + ); } + break 'poll; } Token::CheckAvailableMemory => { // Acknowledge the timer. |