devices: gpu: preserve stdout and stderr for virglrender logging

BUG=chromium:925590
TEST=tail -f /var/log/messages

Change-Id: I1d2d3177f6a83d6631eab11ff455813f99f62406
Reviewed-on: https://chromium-review.googlesource.com/1440032
Commit-Ready: David Riley <davidriley@chromium.org>
Tested-by: David Riley <davidriley@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Zach Reizner <zachr@chromium.org>
This commit is contained in:
David Riley 2019-01-28 13:27:29 -08:00 committed by chrome-bot
parent 0f5e2af614
commit cc86d7d723

View file

@ -652,6 +652,12 @@ impl Drop for Gpu {
impl VirtioDevice for Gpu { impl VirtioDevice for Gpu {
fn keep_fds(&self) -> Vec<RawFd> { fn keep_fds(&self) -> Vec<RawFd> {
let mut keep_fds = Vec::new(); let mut keep_fds = Vec::new();
// TODO(davidriley): Remove once virgl has another path to include
// debugging logs.
if cfg!(debug_assertions) {
keep_fds.push(libc::STDOUT_FILENO);
keep_fds.push(libc::STDERR_FILENO);
}
keep_fds.push(self.exit_evt.as_raw_fd()); keep_fds.push(self.exit_evt.as_raw_fd());
if let Some(ref resource_bridge) = self.resource_bridge { if let Some(ref resource_bridge) = self.resource_bridge {
keep_fds.push(resource_bridge.as_raw_fd()); keep_fds.push(resource_bridge.as_raw_fd());