Message ID | 20220907233308.4153-2-aeasi@marvell.com |
---|---|
State | New |
Headers | show |
Series | Tracing: Compile error with qla2xxx | expand |
Steven, Can you please review Arun's patch? > Fix this compilation error seen when CONFIG_TRACING is not enabled: > > drivers/scsi/qla2xxx/qla_os.c: In function 'qla_trace_init': > drivers/scsi/qla2xxx/qla_os.c:2854:25: error: implicit declaration of function > 'trace_array_get_by_name'; did you mean 'trace_array_set_clr_event'? > [-Werror=implicit-function-declaration] > 2854 | qla_trc_array = trace_array_get_by_name("qla2xxx"); > | ^~~~~~~~~~~~~~~~~~~~~~~ > | trace_array_set_clr_event > > drivers/scsi/qla2xxx/qla_os.c: In function 'qla_trace_uninit': > drivers/scsi/qla2xxx/qla_os.c:2869:9: error: implicit declaration of function > 'trace_array_put' [-Werror=implicit-function-declaration] > 2869 | trace_array_put(qla_trc_array); > | ^~~~~~~~~~~~~~~ >
Since Steve is travelling, trying Ingo, who is a co-maintainer of trace stuff. Hi Ingo, If you could review/approve the patch, that would be very helpful, as this is a build breaker fix. Please see the link below for more context: Most recent (v3) patch posting: https://lore.kernel.org/linux-scsi/20220907233308.4153-2-aeasi@marvell.com/ Steve suggesting to take the patch via SCSI tree: https://lore.kernel.org/linux-scsi/20220906174140.41b46a5f@gandalf.local.home/ Regards, -Arun On Thu, 15 Sep 2022, 6:32pm, Martin K. Petersen wrote: > External Email > > ---------------------------------------------------------------------- > > Steven, > > Can you please review Arun's patch? > > > Fix this compilation error seen when CONFIG_TRACING is not enabled: > > > > drivers/scsi/qla2xxx/qla_os.c: In function 'qla_trace_init': > > drivers/scsi/qla2xxx/qla_os.c:2854:25: error: implicit declaration of function > > 'trace_array_get_by_name'; did you mean 'trace_array_set_clr_event'? > > [-Werror=implicit-function-declaration] > > 2854 | qla_trc_array = trace_array_get_by_name("qla2xxx"); > > | ^~~~~~~~~~~~~~~~~~~~~~~ > > | trace_array_set_clr_event > > > > drivers/scsi/qla2xxx/qla_os.c: In function 'qla_trace_uninit': > > drivers/scsi/qla2xxx/qla_os.c:2869:9: error: implicit declaration of function > > 'trace_array_put' [-Werror=implicit-function-declaration] > > 2869 | trace_array_put(qla_trc_array); > > | ^~~~~~~~~~~~~~~ > > > >
On Thu, 15 Sep 2022 21:32:59 -0400 "Martin K. Petersen" <martin.petersen@oracle.com> wrote: > Steven, > > Can you please review Arun's patch? Sorry, was busy running a conference ;-) > > > Fix this compilation error seen when CONFIG_TRACING is not enabled: > > > > drivers/scsi/qla2xxx/qla_os.c: In function 'qla_trace_init': > > drivers/scsi/qla2xxx/qla_os.c:2854:25: error: implicit declaration of function > > 'trace_array_get_by_name'; did you mean 'trace_array_set_clr_event'? > > [-Werror=implicit-function-declaration] > > 2854 | qla_trc_array = trace_array_get_by_name("qla2xxx"); > > | ^~~~~~~~~~~~~~~~~~~~~~~ > > | trace_array_set_clr_event > > > > drivers/scsi/qla2xxx/qla_os.c: In function 'qla_trace_uninit': > > drivers/scsi/qla2xxx/qla_os.c:2869:9: error: implicit declaration of function > > 'trace_array_put' [-Werror=implicit-function-declaration] > > 2869 | trace_array_put(qla_trc_array); > > | ^~~~~~~~~~~~~~~ > > > The patch looks good to me. Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org> -- Steve
Thanks for the review, Steve. Regards, -Arun On Thu, 22 Sep 2022, 2:02pm, Steven Rostedt wrote: > External Email > > ---------------------------------------------------------------------- > On Thu, 15 Sep 2022 21:32:59 -0400 > "Martin K. Petersen" <martin.petersen@oracle.com> wrote: > > > Steven, > > > > Can you please review Arun's patch? > > Sorry, was busy running a conference ;-) > > > > > > Fix this compilation error seen when CONFIG_TRACING is not enabled: > > > > > > drivers/scsi/qla2xxx/qla_os.c: In function 'qla_trace_init': > > > drivers/scsi/qla2xxx/qla_os.c:2854:25: error: implicit declaration of function > > > 'trace_array_get_by_name'; did you mean 'trace_array_set_clr_event'? > > > [-Werror=implicit-function-declaration] > > > 2854 | qla_trc_array = trace_array_get_by_name("qla2xxx"); > > > | ^~~~~~~~~~~~~~~~~~~~~~~ > > > | trace_array_set_clr_event > > > > > > drivers/scsi/qla2xxx/qla_os.c: In function 'qla_trace_uninit': > > > drivers/scsi/qla2xxx/qla_os.c:2869:9: error: implicit declaration of function > > > 'trace_array_put' [-Werror=implicit-function-declaration] > > > 2869 | trace_array_put(qla_trc_array); > > > | ^~~~~~~~~~~~~~~ > > > > > > > The patch looks good to me. > > Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org> > > -- Steve >
diff --git a/include/linux/trace.h b/include/linux/trace.h index bf16961..b5e16e4 100644 --- a/include/linux/trace.h +++ b/include/linux/trace.h @@ -2,8 +2,6 @@ #ifndef _LINUX_TRACE_H #define _LINUX_TRACE_H -#ifdef CONFIG_TRACING - #define TRACE_EXPORT_FUNCTION BIT(0) #define TRACE_EXPORT_EVENT BIT(1) #define TRACE_EXPORT_MARKER BIT(2) @@ -28,6 +26,8 @@ struct trace_export { int flags; }; +#ifdef CONFIG_TRACING + int register_ftrace_export(struct trace_export *export); int unregister_ftrace_export(struct trace_export *export); @@ -48,6 +48,38 @@ void osnoise_arch_unregister(void); void osnoise_trace_irq_entry(int id); void osnoise_trace_irq_exit(int id, const char *desc); +#else /* CONFIG_TRACING */ +static inline int register_ftrace_export(struct trace_export *export) +{ + return -EINVAL; +} +static inline int unregister_ftrace_export(struct trace_export *export) +{ + return 0; +} +static inline void trace_printk_init_buffers(void) +{ +} +static inline int trace_array_printk(struct trace_array *tr, unsigned long ip, + const char *fmt, ...) +{ + return 0; +} +static inline int trace_array_init_printk(struct trace_array *tr) +{ + return -EINVAL; +} +static inline void trace_array_put(struct trace_array *tr) +{ +} +static inline struct trace_array *trace_array_get_by_name(const char *name) +{ + return NULL; +} +static inline int trace_array_destroy(struct trace_array *tr) +{ + return 0; +} #endif /* CONFIG_TRACING */ #endif /* _LINUX_TRACE_H */
Fix this compilation error seen when CONFIG_TRACING is not enabled: drivers/scsi/qla2xxx/qla_os.c: In function 'qla_trace_init': drivers/scsi/qla2xxx/qla_os.c:2854:25: error: implicit declaration of function 'trace_array_get_by_name'; did you mean 'trace_array_set_clr_event'? [-Werror=implicit-function-declaration] 2854 | qla_trc_array = trace_array_get_by_name("qla2xxx"); | ^~~~~~~~~~~~~~~~~~~~~~~ | trace_array_set_clr_event drivers/scsi/qla2xxx/qla_os.c: In function 'qla_trace_uninit': drivers/scsi/qla2xxx/qla_os.c:2869:9: error: implicit declaration of function 'trace_array_put' [-Werror=implicit-function-declaration] 2869 | trace_array_put(qla_trc_array); | ^~~~~~~~~~~~~~~ Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Arun Easi <aeasi@marvell.com> --- include/linux/trace.h | 36 ++++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-)