Commit f7d9f637 authored by Daniel Bristot de Oliveira's avatar Daniel Bristot de Oliveira Committed by Steven Rostedt (VMware)
Browse files

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: bce29ac9 ("trace: Add osnoise tracer")
Reported-by: default avatarkernel test robot <lkp@intel.com>
Signed-off-by: default avatarDaniel Bristot de Oliveira <bristot@redhat.com>
Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
parent b96285e1
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -2,9 +2,6 @@
#include <linux/trace.h>

#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
 */
+2 −0
Original line number Diff line number Diff line
@@ -45,6 +45,8 @@ int trace_array_destroy(struct trace_array *tr);
/* For osnoise tracer */
int osnoise_arch_register(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 */

+11 −9
Original line number Diff line number Diff line
@@ -736,7 +736,7 @@ void __weak osnoise_arch_unregister(void)
 * This function hooks the IRQ related callbacks to the respective trace
 * events.
 */
int hook_irq_events(void)
static int hook_irq_events(void)
{
	int ret;

@@ -768,7 +768,7 @@ int hook_irq_events(void)
 * This function unhooks the IRQ related callbacks to the respective trace
 * events.
 */
void unhook_irq_events(void)
static void unhook_irq_events(void)
{
	osnoise_arch_unregister();
	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
 * 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();

@@ -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
 * 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();
	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
 * 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,
			    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
 * threads on the necessary kernel events.
 */
int hook_thread_events(void)
static int hook_thread_events(void)
{
	int ret;

@@ -985,7 +985,7 @@ int hook_thread_events(void)
 * Unook the osnoise tracer callbacks to handle the noise from other
 * 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);
}
@@ -997,7 +997,8 @@ void unhook_thread_events(void)
 * values will be used later to compute the diff betwneen the statistics
 * 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->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
 * 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->irq_count = osn_var->irq.count - s->irq_count;