> 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

Reply via email to