[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <d374f5a6453ee54549fea44efee78b4dee646757.1675181734.git.bristot@kernel.org>
Date: Tue, 31 Jan 2023 17:30:03 +0100
From: Daniel Bristot de Oliveira <bristot@...nel.org>
To: Daniel Bristot de Oliveira <bristot@...nel.org>,
Steven Rostedt <rostedt@...dmis.org>,
Jonathan Corbet <corbet@....net>
Cc: Juri Lelli <juri.lelli@...hat.com>,
Clark Williams <williams@...hat.com>,
Bagas Sanjaya <bagasdotme@...il.com>,
linux-trace-devel@...r.kernel.org, linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: [PATCH V2 2/6] rtla/osnoise: Add OSNOISE_IRQ_DISABLE option
Add OSNOISE_IRQ_DISABLE to the set of possible options in the osnoise
context. Do not use it yet.
In preparation for the hwnoise tool.
Signed-off-by: Daniel Bristot de Oliveira <bristot@...nel.org>
Cc: Daniel Bristot de Oliveira <bristot@...nel.org>
Cc: Steven Rostedt <rostedt@...dmis.org>
Cc: Jonathan Corbet <corbet@....net>
---
tools/tracing/rtla/src/osnoise.c | 6 ++++++
tools/tracing/rtla/src/osnoise.h | 6 ++++++
2 files changed, 12 insertions(+)
diff --git a/tools/tracing/rtla/src/osnoise.c b/tools/tracing/rtla/src/osnoise.c
index 050a9997191c..6bf877ed8a77 100644
--- a/tools/tracing/rtla/src/osnoise.c
+++ b/tools/tracing/rtla/src/osnoise.c
@@ -842,6 +842,8 @@ static void osnoise_put_##name(struct osnoise_context *context) \
context->orig_opt_##name = OSNOISE_OPTION_INIT_VAL; \
}
+OSNOISE_OPTION(irq_disable, "OSNOISE_IRQ_DISABLE");
+
/*
* enable_osnoise - enable osnoise tracer in the trace_instance
*/
@@ -906,6 +908,9 @@ struct osnoise_context *osnoise_context_alloc(void)
context->orig_tracing_thresh = OSNOISE_OPTION_INIT_VAL;
context->tracing_thresh = OSNOISE_OPTION_INIT_VAL;
+ context->orig_opt_irq_disable = OSNOISE_OPTION_INIT_VAL;
+ context->opt_irq_disable = OSNOISE_OPTION_INIT_VAL;
+
osnoise_get_context(context);
return context;
@@ -932,6 +937,7 @@ void osnoise_put_context(struct osnoise_context *context)
osnoise_put_timerlat_period_us(context);
osnoise_put_print_stack(context);
osnoise_put_tracing_thresh(context);
+ osnoise_put_irq_disable(context);
free(context);
}
diff --git a/tools/tracing/rtla/src/osnoise.h b/tools/tracing/rtla/src/osnoise.h
index 04a4384cc544..5bb0dc998f58 100644
--- a/tools/tracing/rtla/src/osnoise.h
+++ b/tools/tracing/rtla/src/osnoise.h
@@ -38,6 +38,10 @@ struct osnoise_context {
/* -1 as init value because 0 is disabled */
long long orig_print_stack;
long long print_stack;
+
+ /* -1 as init value because 0 is off */
+ int orig_opt_irq_disable;
+ int opt_irq_disable;
};
/*
@@ -79,6 +83,8 @@ void osnoise_restore_print_stack(struct osnoise_context *context);
int osnoise_set_print_stack(struct osnoise_context *context,
long long print_stack);
+int osnoise_set_irq_disable(struct osnoise_context *context, bool onoff);
+
/*
* osnoise_tool - osnoise based tool definition.
*/
--
2.38.1
Powered by blists - more mailing lists