Hi Yafang, Thank you for the patch! Yet something to improve: [auto build test ERROR on net-next/master] url: https://github.com/0day-ci/linux/commits/Yafang-Shao/net-tcp-track-all-TCP-IP-state-transition-in-tcp_set_state/20171112-203643 config: mips-malta_kvm_defconfig (attached as .config) compiler: mipsel-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree make.cross ARCH=mips All errors (new ones prefixed by >>): In file included from include/net/tcp.h:49:0, from net/netfilter/ipvs/ip_vs_proto_tcp.c:27: include/trace/events/tcp.h:12:31: error: expected identifier or '(' before '{' token #define tcp_state_name(state) { state, #state } ^ net/netfilter/ipvs/ip_vs_proto_tcp.c:424:21: note: in expansion of macro 'tcp_state_name' static const char * tcp_state_name(int state) ^~~~~~~~~~~~~~ net/netfilter/ipvs/ip_vs_proto_tcp.c:425:1: error: expected identifier or '(' before '{' token { ^ >> net/netfilter/ipvs/ip_vs_proto_tcp.c:737:17: error: 'tcp_state_name' undeclared here (not in a function); did you mean 'tcp_state_idx'? .state_name = tcp_state_name, ^~~~~~~~~~~~~~ tcp_state_idx vim +737 net/netfilter/ipvs/ip_vs_proto_tcp.c ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 718 ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 719 ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 720 struct ip_vs_protocol ip_vs_protocol_tcp = { ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 721 .name = "TCP", ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 722 .protocol = IPPROTO_TCP, 2ad17defd net/ipv4/ipvs/ip_vs_proto_tcp.c Julian Anastasov 2008-04-29 723 .num_states = IP_VS_TCP_S_LAST, ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 724 .dont_defrag = 0, 4a85b96c0 net/netfilter/ipvs/ip_vs_proto_tcp.c Hans Schillstrom 2011-01-03 725 .init = NULL, 4a85b96c0 net/netfilter/ipvs/ip_vs_proto_tcp.c Hans Schillstrom 2011-01-03 726 .exit = NULL, 4a85b96c0 net/netfilter/ipvs/ip_vs_proto_tcp.c Hans Schillstrom 2011-01-03 727 .init_netns = __ip_vs_tcp_init, 4a85b96c0 net/netfilter/ipvs/ip_vs_proto_tcp.c Hans Schillstrom 2011-01-03 728 .exit_netns = __ip_vs_tcp_exit, ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 729 .register_app = tcp_register_app, ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 730 .unregister_app = tcp_unregister_app, ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 731 .conn_schedule = tcp_conn_schedule, 5c0d2374a net/netfilter/ipvs/ip_vs_proto_tcp.c Simon Horman 2010-08-02 732 .conn_in_get = ip_vs_conn_in_get_proto, 5c0d2374a net/netfilter/ipvs/ip_vs_proto_tcp.c Simon Horman 2010-08-02 733 .conn_out_get = ip_vs_conn_out_get_proto, ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 734 .snat_handler = tcp_snat_handler, ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 735 .dnat_handler = tcp_dnat_handler, ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 736 .csum_check = tcp_csum_check, ^1da177e4 net/ipv4/ipvs/ip_vs_proto_tcp.c Linus Torvalds 2005-04-16 @737 .state_name = tcp_state_name, :::::: The code at line 737 was first introduced by commit :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2 :::::: TO: Linus Torvalds :::::: CC: Linus Torvalds --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation