mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-29 13:53:33 +00:00
trace/osnoise: Fix 'no previous prototype' warnings
kernel test robot reported some osnoise functions with "no previous
prototype."
Fix these warnings by making local functions static, and by adding:
void osnoise_trace_irq_entry(int id);
void osnoise_trace_irq_exit(int id, const char *desc);
to include/linux/trace.h.
Link: https://lkml.kernel.org/r/e40d3cb4be8bde921f4b40fa6a095cf85ab807bd.1624872608.git.bristot@redhat.com
Fixes: bce29ac9ce
("trace: Add osnoise tracer")
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Daniel Bristot de Oliveira <bristot@redhat.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
This commit is contained in:
parent
b96285e10a
commit
f7d9f6370e
3 changed files with 13 additions and 12 deletions
|
@ -2,9 +2,6 @@
|
||||||
#include <linux/trace.h>
|
#include <linux/trace.h>
|
||||||
|
|
||||||
#if defined(CONFIG_OSNOISE_TRACER) && defined(CONFIG_X86_LOCAL_APIC)
|
#if defined(CONFIG_OSNOISE_TRACER) && defined(CONFIG_X86_LOCAL_APIC)
|
||||||
extern void osnoise_trace_irq_entry(int id);
|
|
||||||
extern void osnoise_trace_irq_exit(int id, const char *desc);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* trace_intel_irq_entry - record intel specific IRQ entry
|
* trace_intel_irq_entry - record intel specific IRQ entry
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -45,6 +45,8 @@ int trace_array_destroy(struct trace_array *tr);
|
||||||
/* For osnoise tracer */
|
/* For osnoise tracer */
|
||||||
int osnoise_arch_register(void);
|
int osnoise_arch_register(void);
|
||||||
void osnoise_arch_unregister(void);
|
void osnoise_arch_unregister(void);
|
||||||
|
void osnoise_trace_irq_entry(int id);
|
||||||
|
void osnoise_trace_irq_exit(int id, const char *desc);
|
||||||
|
|
||||||
#endif /* CONFIG_TRACING */
|
#endif /* CONFIG_TRACING */
|
||||||
|
|
||||||
|
|
|
@ -736,7 +736,7 @@ void __weak osnoise_arch_unregister(void)
|
||||||
* This function hooks the IRQ related callbacks to the respective trace
|
* This function hooks the IRQ related callbacks to the respective trace
|
||||||
* events.
|
* events.
|
||||||
*/
|
*/
|
||||||
int hook_irq_events(void)
|
static int hook_irq_events(void)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
@ -768,7 +768,7 @@ int hook_irq_events(void)
|
||||||
* This function unhooks the IRQ related callbacks to the respective trace
|
* This function unhooks the IRQ related callbacks to the respective trace
|
||||||
* events.
|
* events.
|
||||||
*/
|
*/
|
||||||
void unhook_irq_events(void)
|
static void unhook_irq_events(void)
|
||||||
{
|
{
|
||||||
osnoise_arch_unregister();
|
osnoise_arch_unregister();
|
||||||
unregister_trace_irq_handler_exit(trace_irqexit_callback, NULL);
|
unregister_trace_irq_handler_exit(trace_irqexit_callback, NULL);
|
||||||
|
@ -785,7 +785,7 @@ void unhook_irq_events(void)
|
||||||
* arrival time. The delta_start is used to compute the duration at the
|
* arrival time. The delta_start is used to compute the duration at the
|
||||||
* softirq exit handler. See cond_move_softirq_delta_start().
|
* softirq exit handler. See cond_move_softirq_delta_start().
|
||||||
*/
|
*/
|
||||||
void trace_softirq_entry_callback(void *data, unsigned int vec_nr)
|
static void trace_softirq_entry_callback(void *data, unsigned int vec_nr)
|
||||||
{
|
{
|
||||||
struct osnoise_variables *osn_var = this_cpu_osn_var();
|
struct osnoise_variables *osn_var = this_cpu_osn_var();
|
||||||
|
|
||||||
|
@ -808,7 +808,7 @@ void trace_softirq_entry_callback(void *data, unsigned int vec_nr)
|
||||||
* Computes the duration of the softirq noise, and trace it. Also discounts the
|
* Computes the duration of the softirq noise, and trace it. Also discounts the
|
||||||
* interference from other sources of noise could be currently being accounted.
|
* interference from other sources of noise could be currently being accounted.
|
||||||
*/
|
*/
|
||||||
void trace_softirq_exit_callback(void *data, unsigned int vec_nr)
|
static void trace_softirq_exit_callback(void *data, unsigned int vec_nr)
|
||||||
{
|
{
|
||||||
struct osnoise_variables *osn_var = this_cpu_osn_var();
|
struct osnoise_variables *osn_var = this_cpu_osn_var();
|
||||||
int duration;
|
int duration;
|
||||||
|
@ -949,7 +949,7 @@ thread_exit(struct osnoise_variables *osn_var, struct task_struct *t)
|
||||||
* This function is hooked to the sched:sched_switch trace event, and it is
|
* This function is hooked to the sched:sched_switch trace event, and it is
|
||||||
* used to record the beginning and to report the end of a thread noise window.
|
* used to record the beginning and to report the end of a thread noise window.
|
||||||
*/
|
*/
|
||||||
void
|
static void
|
||||||
trace_sched_switch_callback(void *data, bool preempt, struct task_struct *p,
|
trace_sched_switch_callback(void *data, bool preempt, struct task_struct *p,
|
||||||
struct task_struct *n)
|
struct task_struct *n)
|
||||||
{
|
{
|
||||||
|
@ -968,7 +968,7 @@ trace_sched_switch_callback(void *data, bool preempt, struct task_struct *p,
|
||||||
* Hook the osnoise tracer callbacks to handle the noise from other
|
* Hook the osnoise tracer callbacks to handle the noise from other
|
||||||
* threads on the necessary kernel events.
|
* threads on the necessary kernel events.
|
||||||
*/
|
*/
|
||||||
int hook_thread_events(void)
|
static int hook_thread_events(void)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
@ -985,7 +985,7 @@ int hook_thread_events(void)
|
||||||
* Unook the osnoise tracer callbacks to handle the noise from other
|
* Unook the osnoise tracer callbacks to handle the noise from other
|
||||||
* threads on the necessary kernel events.
|
* threads on the necessary kernel events.
|
||||||
*/
|
*/
|
||||||
void unhook_thread_events(void)
|
static void unhook_thread_events(void)
|
||||||
{
|
{
|
||||||
unregister_trace_sched_switch(trace_sched_switch_callback, NULL);
|
unregister_trace_sched_switch(trace_sched_switch_callback, NULL);
|
||||||
}
|
}
|
||||||
|
@ -997,7 +997,8 @@ void unhook_thread_events(void)
|
||||||
* values will be used later to compute the diff betwneen the statistics
|
* values will be used later to compute the diff betwneen the statistics
|
||||||
* before and after the osnoise sampling.
|
* before and after the osnoise sampling.
|
||||||
*/
|
*/
|
||||||
void save_osn_sample_stats(struct osnoise_variables *osn_var, struct osnoise_sample *s)
|
static void
|
||||||
|
save_osn_sample_stats(struct osnoise_variables *osn_var, struct osnoise_sample *s)
|
||||||
{
|
{
|
||||||
s->nmi_count = osn_var->nmi.count;
|
s->nmi_count = osn_var->nmi.count;
|
||||||
s->irq_count = osn_var->irq.count;
|
s->irq_count = osn_var->irq.count;
|
||||||
|
@ -1012,7 +1013,8 @@ void save_osn_sample_stats(struct osnoise_variables *osn_var, struct osnoise_sam
|
||||||
* statistics. The struct osnoise_sample *s contains the statistics saved via
|
* statistics. The struct osnoise_sample *s contains the statistics saved via
|
||||||
* save_osn_sample_stats() before the osnoise sampling.
|
* save_osn_sample_stats() before the osnoise sampling.
|
||||||
*/
|
*/
|
||||||
void diff_osn_sample_stats(struct osnoise_variables *osn_var, struct osnoise_sample *s)
|
static void
|
||||||
|
diff_osn_sample_stats(struct osnoise_variables *osn_var, struct osnoise_sample *s)
|
||||||
{
|
{
|
||||||
s->nmi_count = osn_var->nmi.count - s->nmi_count;
|
s->nmi_count = osn_var->nmi.count - s->nmi_count;
|
||||||
s->irq_count = osn_var->irq.count - s->irq_count;
|
s->irq_count = osn_var->irq.count - s->irq_count;
|
||||||
|
|
Loading…
Reference in a new issue