summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorClark Williams <williams@redhat.com>2010-03-16 15:36:39 -0500
committerClark Williams <williams@redhat.com>2010-03-16 15:36:39 -0500
commitd61850a9f0ad4e84f105393003640163a8377c59 (patch)
treeccf7d9d6622ceba8d3045680e720c8c1c4e57fd0
parent5860be7f4db454cfd5131813cbbe42a9a4fcd8b7 (diff)
downloadrt-tests-d61850a9f0ad4e84f105393003640163a8377c59.tar.gz
modifications to ftrace logic for correct operation
Change enable/disable file to be tracing/tracing_on; enable the options/latency-trace format for function tracing; add tracetype CUSTOM for use with the -T/--tracer option. Signed-off-by: Clark Williams <williams@redhat.com>
-rw-r--r--src/cyclictest/cyclictest.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/cyclictest/cyclictest.c b/src/cyclictest/cyclictest.c
index 31963ac..814a7d1 100644
--- a/src/cyclictest/cyclictest.c
+++ b/src/cyclictest/cyclictest.c
@@ -107,6 +107,7 @@ enum {
IRQPREEMPTOFF,
WAKEUP,
WAKEUPRT,
+ CUSTOM,
};
/* Struct to transfer parameters to the thread */
@@ -146,7 +147,7 @@ struct thread_stat {
static int shutdown;
static int tracelimit = 0;
-static int ftrace = 0;
+static int ftrace = 1;
static int kernelversion;
static int verbose = 0;
static int oscope_reduction = 1;
@@ -310,14 +311,14 @@ void tracing(int on)
switch (kernelversion) {
case KV_26_LT18: gettimeofday(0,(struct timezone *)1); break;
case KV_26_LT24: prctl(0, 1); break;
- case KV_26_CURR: setkernvar("tracing_enabled", "1"); break;
+ case KV_26_CURR: setkernvar("tracing_on", "1"); break;
default: break;
}
} else {
switch (kernelversion) {
case KV_26_LT18: gettimeofday(0,0); break;
case KV_26_LT24: prctl(0, 0); break;
- case KV_26_CURR: setkernvar("tracing_enabled", "0"); break;
+ case KV_26_CURR: setkernvar("tracing_on", "0"); break;
default: break;
}
}
@@ -387,6 +388,8 @@ static void setup_tracer(void)
char buffer[32];
int ret;
+ setkernvar("tracing_enabled", "1");
+
sprintf(buffer, "%d", tracelimit);
setkernvar("tracing_thresh", buffer);
@@ -445,6 +448,7 @@ static void setup_tracer(void)
fprintf(stderr, "Requested tracer '%s' not available\n", tracer);
setkernvar(traceroptions, "print-parent");
+ setkernvar(traceroptions, "latency-format");
if (verbose) {
setkernvar(traceroptions, "sym-offset");
setkernvar(traceroptions, "sym-addr");
@@ -963,7 +967,10 @@ static void process_options (int argc, char *argv[])
else
num_threads = max_cpus;
break;
- case 'T': strncpy(tracer, optarg, sizeof(tracer)); break;
+ case 'T':
+ tracetype = CUSTOM;
+ strncpy(tracer, optarg, sizeof(tracer));
+ break;
case 'u': setvbuf(stdout, NULL, _IONBF, 0); break;
case 'v': verbose = 1; break;
case 'm': lockall = 1; break;