From 602d38630f5cecb1140bb2f75a1a4d2e5ffe523d Mon Sep 17 00:00:00 2001 From: Benoit Jacob Date: Tue, 24 Nov 2020 15:23:16 -0500 Subject: [PATCH] make fallback seamless by hiding stderr --- client/TracySysTrace.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/client/TracySysTrace.cpp b/client/TracySysTrace.cpp index 5887c93a..9dafd6bb 100644 --- a/client/TracySysTrace.cpp +++ b/client/TracySysTrace.cpp @@ -1180,8 +1180,11 @@ void SysTraceWorker( void* ptr ) close( pipefd[1] ); sched_param sp = { 4 }; pthread_setschedparam( pthread_self(), SCHED_FIFO, &sp ); + // Try `cat /sys/kernel/debug/tracing/trace_pipe` first, and then + // possibly as a fallback /data/tracy_systrace. To make the fallback + // seamless, we redirect cat's stderr to /dev/null. execlp( "su", "su", "root", "sh", "-c", - "cat /sys/kernel/debug/tracing/trace_pipe" + "cat /sys/kernel/debug/tracing/trace_pipe 2>/dev/null" #if defined __ANDROID__ && ( defined __aarch64__ || defined __ARM_ARCH ) " || /data/tracy_systrace" #endif