mirror of
https://github.com/torvalds/linux.git
synced 2024-11-21 19:41:42 +00:00
tracing/tools: Trivial updates for 6.11
- Use pretty formatting only on interactive tty in rtla/osnoise - Better reporting when histogram is empty in rtla/osnoise - Use the correct library name for "libtracefs" in feature detection -----BEGIN PGP SIGNATURE----- iIoEABYIADIWIQRRSw7ePDh/lE+zeZMp5XQQmuv6qgUCZpbYbRQccm9zdGVkdEBn b29kbWlzLm9yZwAKCRAp5XQQmuv6qpWSAQD69Ea2bOCRuqCW6mjH4iPgWA3Re4Xt rnUI3mWT7+FSNwD/T1ElUQ8/mfJptawZl1KyACNovtE1xMn365yHsFA2Mgg= =fnCa -----END PGP SIGNATURE----- Merge tag 'trace-tools-v6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace Pull tracing tools updates from Steven Rostedt: "Trivial updates for 6.11: - Use pretty formatting only on interactive tty in rtla/osnoise - Better reporting when histogram is empty in rtla/osnoise - Use the correct library name for "libtracefs" in feature detection" * tag 'trace-tools-v6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace: tools: build: use correct lib name for libtracefs feature detection rtla/osnoise: Better report when histogram is empty rtla/osnoise: Use pretty formatting only on interactive tty
This commit is contained in:
commit
1777e471e1
@ -213,7 +213,7 @@ $(OUTPUT)test-libtraceevent.bin:
|
||||
$(BUILD) -ltraceevent
|
||||
|
||||
$(OUTPUT)test-libtracefs.bin:
|
||||
$(BUILD) $(shell $(PKG_CONFIG) --cflags libtraceevent 2>/dev/null) -ltracefs
|
||||
$(BUILD) $(shell $(PKG_CONFIG) --cflags libtracefs 2>/dev/null) -ltracefs
|
||||
|
||||
$(OUTPUT)test-libcrypto.bin:
|
||||
$(BUILD) -lcrypto
|
||||
|
@ -1,5 +1,5 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include <tracefs/tracefs.h>
|
||||
#include <tracefs.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
|
@ -374,6 +374,7 @@ osnoise_print_stats(struct osnoise_hist_params *params, struct osnoise_tool *too
|
||||
{
|
||||
struct osnoise_hist_data *data = tool->data;
|
||||
struct trace_instance *trace = &tool->trace;
|
||||
int has_samples = 0;
|
||||
int bucket, cpu;
|
||||
int total;
|
||||
|
||||
@ -402,11 +403,25 @@ osnoise_print_stats(struct osnoise_hist_params *params, struct osnoise_tool *too
|
||||
continue;
|
||||
}
|
||||
|
||||
/* There are samples above the threshold */
|
||||
has_samples = 1;
|
||||
trace_seq_printf(trace->seq, "\n");
|
||||
trace_seq_do_printf(trace->seq);
|
||||
trace_seq_reset(trace->seq);
|
||||
}
|
||||
|
||||
/*
|
||||
* If no samples were recorded, skip calculations, print zeroed statistics
|
||||
* and return.
|
||||
*/
|
||||
if (!has_samples) {
|
||||
trace_seq_reset(trace->seq);
|
||||
trace_seq_printf(trace->seq, "over: 0\ncount: 0\nmin: 0\navg: 0\nmax: 0\n");
|
||||
trace_seq_do_printf(trace->seq);
|
||||
trace_seq_reset(trace->seq);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!params->no_index)
|
||||
trace_seq_printf(trace->seq, "over: ");
|
||||
|
||||
|
@ -42,6 +42,7 @@ struct osnoise_top_params {
|
||||
int hk_cpus;
|
||||
int warmup;
|
||||
int buffer_size;
|
||||
int pretty_output;
|
||||
cpu_set_t hk_cpu_set;
|
||||
struct sched_attr sched_param;
|
||||
struct trace_events *events;
|
||||
@ -163,7 +164,9 @@ static void osnoise_top_header(struct osnoise_tool *top)
|
||||
|
||||
get_duration(top->start_time, duration, sizeof(duration));
|
||||
|
||||
trace_seq_printf(s, "\033[2;37;40m");
|
||||
if (params->pretty_output)
|
||||
trace_seq_printf(s, "\033[2;37;40m");
|
||||
|
||||
trace_seq_printf(s, " ");
|
||||
|
||||
if (params->mode == MODE_OSNOISE) {
|
||||
@ -174,12 +177,16 @@ static void osnoise_top_header(struct osnoise_tool *top)
|
||||
}
|
||||
|
||||
trace_seq_printf(s, " ");
|
||||
trace_seq_printf(s, "\033[0;0;0m");
|
||||
|
||||
if (params->pretty_output)
|
||||
trace_seq_printf(s, "\033[0;0;0m");
|
||||
trace_seq_printf(s, "\n");
|
||||
|
||||
trace_seq_printf(s, "duration: %9s | time is in us\n", duration);
|
||||
|
||||
trace_seq_printf(s, "\033[2;30;47m");
|
||||
if (params->pretty_output)
|
||||
trace_seq_printf(s, "\033[2;30;47m");
|
||||
|
||||
trace_seq_printf(s, "CPU Period Runtime ");
|
||||
trace_seq_printf(s, " Noise ");
|
||||
trace_seq_printf(s, " %% CPU Aval ");
|
||||
@ -192,7 +199,8 @@ static void osnoise_top_header(struct osnoise_tool *top)
|
||||
trace_seq_printf(s, " IRQ Softirq Thread");
|
||||
|
||||
eol:
|
||||
trace_seq_printf(s, "\033[0;0;0m");
|
||||
if (params->pretty_output)
|
||||
trace_seq_printf(s, "\033[0;0;0m");
|
||||
trace_seq_printf(s, "\n");
|
||||
}
|
||||
|
||||
@ -619,6 +627,9 @@ osnoise_top_apply_config(struct osnoise_tool *tool, struct osnoise_top_params *p
|
||||
auto_house_keeping(¶ms->monitored_cpus);
|
||||
}
|
||||
|
||||
if (isatty(1) && !params->quiet)
|
||||
params->pretty_output = 1;
|
||||
|
||||
return 0;
|
||||
|
||||
out_err:
|
||||
|
Loading…
Reference in New Issue
Block a user