On Wed, Aug 17, 2022 at 10:22:15PM +0800, Guoqing Jiang wrote: > With W=1, the following compiler warnings appears. > > In file included from ./include/trace/define_trace.h:102:0, > from drivers/infiniband/hw/hfi1/trace_dbg.h:111, > from drivers/infiniband/hw/hfi1/trace.h:15, > from drivers/infiniband/hw/hfi1/trace.c:6: > drivers/infiniband/hw/hfi1/./trace_dbg.h: In function ‘trace_event_get_offsets_hfi1_trace_template’: > ./include/trace/trace_events.h:261:9: warning: function ‘trace_event_get_offsets_hfi1_trace_template’ might be a candidate for ‘gnu_printf’ format attribute [-Wsuggest-attribute=format] > struct trace_event_raw_##call __maybe_unused *entry; \ > ^ > drivers/infiniband/hw/hfi1/./trace_dbg.h:25:1: note: in expansion of macro ‘DECLARE_EVENT_CLASS’ > DECLARE_EVENT_CLASS(hfi1_trace_template, > ^~~~~~~~~~~~~~~~~~~ > In file included from ./include/trace/define_trace.h:102:0, > from drivers/infiniband/hw/hfi1/trace_dbg.h:111, > from drivers/infiniband/hw/hfi1/trace.h:15, > from drivers/infiniband/hw/hfi1/trace.c:6: > drivers/infiniband/hw/hfi1/./trace_dbg.h: In function ‘trace_event_raw_event_hfi1_trace_template’: > ./include/trace/trace_events.h:386:9: warning: function ‘trace_event_raw_event_hfi1_trace_template’ might be a candidate for ‘gnu_printf’ format attribute [-Wsuggest-attribute=format] > struct trace_event_raw_##call *entry; \ > ^ > drivers/infiniband/hw/hfi1/./trace_dbg.h:25:1: note: in expansion of macro ‘DECLARE_EVENT_CLASS’ > DECLARE_EVENT_CLASS(hfi1_trace_template, > ^~~~~~~~~~~~~~~~~~~ > In file included from ./include/trace/define_trace.h:103:0, > from drivers/infiniband/hw/hfi1/trace_dbg.h:111, > from drivers/infiniband/hw/hfi1/trace.h:15, > from drivers/infiniband/hw/hfi1/trace.c:6: > drivers/infiniband/hw/hfi1/./trace_dbg.h: In function ‘perf_trace_hfi1_trace_template’: > ./include/trace/perf.h:64:9: warning: function ‘perf_trace_hfi1_trace_template’ might be a candidate for ‘gnu_printf’ format attribute [-Wsuggest-attribute=format] > struct hlist_head *head; \ > ^ > drivers/infiniband/hw/hfi1/./trace_dbg.h:25:1: note: in expansion of macro ‘DECLARE_EVENT_CLASS’ > DECLARE_EVENT_CLASS(hfi1_trace_template, > ^~~~~~~~~~~~~~~~~~~ > > Signed-off-by: Guoqing Jiang <guoqing.jiang@xxxxxxxxx> > --- > drivers/infiniband/hw/hfi1/trace_dbg.h | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/drivers/infiniband/hw/hfi1/trace_dbg.h b/drivers/infiniband/hw/hfi1/trace_dbg.h > index 582b6f68df3d..489395bfb5b3 100644 > --- a/drivers/infiniband/hw/hfi1/trace_dbg.h > +++ b/drivers/infiniband/hw/hfi1/trace_dbg.h > @@ -22,6 +22,11 @@ > > #define MAX_MSG_LEN 512 > > +#pragma GCC diagnostic push > +#ifndef __clang__ > +#pragma GCC diagnostic ignored "-Wsuggest-attribute=format" > +#endif I don't like it. Or let's fix the code (don't know how) or disable this warning for whole kernel. Thanks