aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Rostedt (Google) <rostedt@goodmis.org>2022-04-20 11:26:32 -0400
committerSteven Rostedt (Google) <rostedt@goodmis.org>2022-04-26 20:50:18 -0400
commit99f136664ff4508548343de2f0a649c50a84798f (patch)
treec9e8b31422221b64e239aa3003d42de098e26e0c
parent36b86908cdc11586e49dcf2558f5152302ce9dd9 (diff)
downloadtrace-cmd-99f136664ff4508548343de2f0a649c50a84798f.tar.gz
trace-cmd: Add debug prints for network connections
To help debug the network agent and listener, add some debug prints that are enabled when --debug option is used. Link: https://lore.kernel.org/linux-trace-devel/20220420152637.13105-7-rostedt@goodmis.org Link: https://lore.kernel.org/linux-trace-devel/20220417184538.1044417-7-rostedt@goodmis.org Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
-rw-r--r--lib/trace-cmd/trace-timesync.c2
-rw-r--r--tracecmd/trace-agent.c3
-rw-r--r--tracecmd/trace-listen.c4
-rw-r--r--tracecmd/trace-record.c9
4 files changed, 18 insertions, 0 deletions
diff --git a/lib/trace-cmd/trace-timesync.c b/lib/trace-cmd/trace-timesync.c
index 14cf20c8..cc44af38 100644
--- a/lib/trace-cmd/trace-timesync.c
+++ b/lib/trace-cmd/trace-timesync.c
@@ -925,7 +925,9 @@ static void *tsync_agent_thread(void *data)
int sd;
while (true) {
+ tracecmd_debug("Listening on fd:%d\n", tsync->msg_handle->fd);
sd = accept(tsync->msg_handle->fd, NULL, NULL);
+ tracecmd_debug("Accepted fd:%d\n", sd);
if (sd < 0) {
if (errno == EINTR)
continue;
diff --git a/tracecmd/trace-agent.c b/tracecmd/trace-agent.c
index cd201ad9..819ac016 100644
--- a/tracecmd/trace-agent.c
+++ b/tracecmd/trace-agent.c
@@ -22,6 +22,8 @@
#include "trace-local.h"
#include "trace-msg.h"
+#define dprint(fmt, ...) tracecmd_debug(fmt, ##__VA_ARGS__)
+
static void make_vsocks(int nr, int *fds, unsigned int *ports)
{
unsigned int port;
@@ -55,6 +57,7 @@ static void make_net(int nr, int *fds, unsigned int *ports)
die("Failed to listen on port %d\n", port);
fds[i] = fd;
ports[i] = port;
+ dprint("CPU[%d]: fd:%d port:%d\n", i, fd, port);
start_port = port + 1;
}
}
diff --git a/tracecmd/trace-listen.c b/tracecmd/trace-listen.c
index 8476fa51..3b446ace 100644
--- a/tracecmd/trace-listen.c
+++ b/tracecmd/trace-listen.c
@@ -26,6 +26,8 @@
#include "trace-local.h"
#include "trace-msg.h"
+#define dprint(fmt, ...) tracecmd_debug(fmt, ##__VA_ARGS__)
+
#define MAX_OPTION_SIZE 4096
#define _VAR_DIR_Q(dir) #dir
@@ -279,6 +281,8 @@ int trace_net_make(int port, enum port_type type)
if (rp == NULL)
return -1;
+ dprint("Create listen port: %d fd:%d\n", port, sd);
+
return sd;
}
diff --git a/tracecmd/trace-record.c b/tracecmd/trace-record.c
index dfcf3d49..9c930920 100644
--- a/tracecmd/trace-record.c
+++ b/tracecmd/trace-record.c
@@ -56,6 +56,8 @@
#define FUNC_STACK_TRACE "func_stack_trace"
#define TSC_CLOCK "x86-tsc"
+#define dprint(fmt, ...) tracecmd_debug(fmt, ##__VA_ARGS__)
+
enum trace_type {
TRACE_TYPE_RECORD = 1,
TRACE_TYPE_START = (1 << 1),
@@ -3139,6 +3141,9 @@ static struct addrinfo *do_getaddrinfo(const char *host, unsigned int port,
return NULL;
}
+ dprint("Attached port %s: %d to results: %p\n",
+ type == USE_TCP ? "TCP" : "UDP", port, results);
+
return results;
}
@@ -3160,6 +3165,8 @@ static int connect_addr(struct addrinfo *results)
if (rp == NULL)
return -1;
+ dprint("connect results: %p with fd: %d\n", results, sfd);
+
return sfd;
}
@@ -3193,7 +3200,9 @@ static int do_accept(int sd)
int cd;
for (;;) {
+ dprint("Wait on accept: %d\n", sd);
cd = accept(sd, NULL, NULL);
+ dprint("accepted: %d\n", cd);
if (cd < 0) {
if (errno == EINTR)
continue;