aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Rostedt (Google) <rostedt@goodmis.org>2022-04-20 11:26:34 -0400
committerSteven Rostedt (Google) <rostedt@goodmis.org>2022-04-26 20:50:18 -0400
commitdd6e8312f53bf95210dedb80ae35b85d319f4c38 (patch)
tree825fe7a07615e090d317448e5b7ff85092d2a8a4
parentdfdea94546c26852f4879a8bb5a694a06ccdb6dd (diff)
downloadtrace-cmd-dd6e8312f53bf95210dedb80ae35b85d319f4c38.tar.gz
trace-cmd: Override tracecmd_debug() to show thread id
To differentiate threads, have tracecmd_debug() show the thread id of the debug prints. Link: https://lore.kernel.org/linux-trace-devel/20220420152637.13105-9-rostedt@goodmis.org Link: https://lore.kernel.org/linux-trace-devel/20220417184538.1044417-9-rostedt@goodmis.org Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
-rw-r--r--tracecmd/trace-cmd.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/tracecmd/trace-cmd.c b/tracecmd/trace-cmd.c
index a83a8d0b..3f3e69a7 100644
--- a/tracecmd/trace-cmd.c
+++ b/tracecmd/trace-cmd.c
@@ -10,12 +10,17 @@
#include <dirent.h>
#include <errno.h>
#include <stdlib.h>
+#include <sys/syscall.h>
#include "trace-local.h"
int silence_warnings;
int show_status;
+#ifndef gettid
+#define gettid() syscall(__NR_gettid)
+#endif
+
void warning(const char *fmt, ...)
{
va_list ap;
@@ -45,6 +50,19 @@ void *malloc_or_die(unsigned int size)
return data;
}
+void tracecmd_debug(const char *fmt, ...)
+{
+ va_list ap;
+
+ if (!tracecmd_get_debug())
+ return;
+
+ va_start(ap, fmt);
+ printf("[%d] ", (int)gettid());
+ vprintf(fmt, ap);
+ va_end(ap);
+}
+
static struct trace_log_severity {
int id;
const char *name;