Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1// SPDX-License-Identifier: GPL-2.0
2#include "osnoise.h"
3
4struct timerlat_params {
5 /* Common params */
6 char *cpus;
7 cpu_set_t monitored_cpus;
8 char *trace_output;
9 char *cgroup_name;
10 unsigned long long runtime;
11 long long stop_us;
12 long long stop_total_us;
13 long long timerlat_period_us;
14 long long print_stack;
15 int sleep_time;
16 int output_divisor;
17 int duration;
18 int set_sched;
19 int dma_latency;
20 int no_aa;
21 int dump_tasks;
22 int cgroup;
23 int hk_cpus;
24 int user_workload;
25 int kernel_workload;
26 int user_data;
27 int warmup;
28 int buffer_size;
29 int deepest_idle_state;
30 cpu_set_t hk_cpu_set;
31 struct sched_attr sched_param;
32 struct trace_events *events;
33 union {
34 struct {
35 /* top only */
36 int quiet;
37 int aa_only;
38 int pretty_output;
39 };
40 struct {
41 /* hist only */
42 char no_irq;
43 char no_thread;
44 char no_header;
45 char no_summary;
46 char no_index;
47 char with_zeros;
48 int bucket_size;
49 int entries;
50 };
51 };
52};
53
54int timerlat_apply_config(struct osnoise_tool *tool, struct timerlat_params *params);
55
56int timerlat_hist_main(int argc, char *argv[]);
57int timerlat_top_main(int argc, char *argv[]);
58int timerlat_main(int argc, char *argv[]);