> On Nov 10, 2017, at 7:07 AM, Steven Rostedt <rost...@goodmis.org> wrote: > > On Fri, 10 Nov 2017 12:56:06 +0800 > Yafang Shao <laoar.s...@gmail.com> wrote: > >> Could the macro tcp_state_name() be renamed ? >> If <trace/events/tcp.h> is included in include/net/tcp.h, it will > > Ideally, you don't want to include trace/events/*.h headers in other > headers, as they can have side effects if those headers are included in > other trace/events/*.h headers. > >> cause compile error, because there's another function tcp_state_name() >> defined in net/netfilter/ipvs/ip_vs_proto_tcp.c. >> static const char * tcp_state_name(int state) >> { >> >> if (state >= IP_VS_TCP_S_LAST) >> >> return "ERR!"; >> >> return tcp_state_name_table[state] ? tcp_state_name_table[state] : >> "?"; >> >> } > > But that said, I didn't make up the trace_state_name(), it was already > there in net-next before this patch. > > But yeah, in actuality, I would have just done: > > #define EM(a) { a, #a }, > #define EMe(a) { a, #a } > > directly. Which we can still do. > > -- Steve >
How about we undef tcp_state_name and tcp_event_names at the end of include/trace/events/tcp.h? Thanks, Song