Hi Ka-Cheong, Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on net-next/master] url: https://github.com/0day-ci/linux/commits/Ka-Cheong-Poon/rds-IPv6-support/20180625-190047 reproduce: # apt-get install sparse make ARCH=x86_64 allmodconfig make C=1 CF=-D__CHECK_ENDIAN__ sparse warnings: (new ones prefixed by >>) >> net/rds/rdma_transport.c:42:5: sparse: symbol >> 'rds_rdma_cm_event_handler_cmn' was not declared. Should it be static? -- net/rds/ib_cm.c:205:17: sparse: expression using sizeof(void) net/rds/ib_cm.c:205:17: sparse: expression using sizeof(void) net/rds/ib_cm.c:207:17: sparse: expression using sizeof(void) net/rds/ib_cm.c:207:17: sparse: expression using sizeof(void) net/rds/ib_cm.c:208:35: sparse: expression using sizeof(void) include/linux/overflow.h:220:13: sparse: undefined identifier '__builtin_mul_overflow' include/linux/overflow.h:220:13: sparse: incorrect type in conditional include/linux/overflow.h:220:13: got void include/linux/overflow.h:220:13: sparse: not a function <noident> include/linux/overflow.h:220:13: sparse: incorrect type in conditional include/linux/overflow.h:220:13: got void >> net/rds/ib_cm.c:908:31: sparse: incorrect type in assignment (different base >> types) @@ expected restricted __be16 [usertype] sin_port @@ got >> unsignedrestricted __be16 [usertype] sin_port @@ net/rds/ib_cm.c:908:31: expected restricted __be16 [usertype] sin_port net/rds/ib_cm.c:908:31: got unsigned short [unsigned] [usertype] <noident> net/rds/ib_cm.c:913:31: sparse: incorrect type in assignment (different base types) @@ expected restricted __be16 [usertype] sin_port @@ got unsignedrestricted __be16 [usertype] sin_port @@ net/rds/ib_cm.c:913:31: expected restricted __be16 [usertype] sin_port net/rds/ib_cm.c:913:31: got unsigned short [unsigned] [usertype] <noident> >> net/rds/ib_cm.c:920:33: sparse: incorrect type in assignment (different base >> types) @@ expected restricted __be16 [usertype] sin6_port @@ got >> unsignedrestricted __be16 [usertype] sin6_port @@ net/rds/ib_cm.c:920:33: expected restricted __be16 [usertype] sin6_port net/rds/ib_cm.c:920:33: got unsigned short [unsigned] [usertype] <noident> net/rds/ib_cm.c:926:33: sparse: incorrect type in assignment (different base types) @@ expected restricted __be16 [usertype] sin6_port @@ got unsignedrestricted __be16 [usertype] sin6_port @@ net/rds/ib_cm.c:926:33: expected restricted __be16 [usertype] sin6_port net/rds/ib_cm.c:926:33: got unsigned short [unsigned] [usertype] <noident> include/linux/overflow.h:220:13: sparse: call with no type! -- >> net/rds/tcp.c:294:9: sparse: context imbalance in 'rds_tcp_laddr_check' - >> different lock contexts for basic block -- net/rds/tcp_connect.c:119:29: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [assigned] [usertype] s_addr @@ got icted __be32 [assigned] [usertype] s_addr @@ net/rds/tcp_connect.c:119:29: expected restricted __be32 [assigned] [usertype] s_addr net/rds/tcp_connect.c:119:29: got unsigned int [unsigned] [usertype] <noident> net/rds/tcp_connect.c:120:22: sparse: incorrect type in assignment (different base types) @@ expected restricted __be16 [assigned] [usertype] sin_port @@ got tricted __be16 [assigned] [usertype] sin_port @@ net/rds/tcp_connect.c:120:22: expected restricted __be16 [assigned] [usertype] sin_port net/rds/tcp_connect.c:120:22: got unsigned short [unsigned] [usertype] <noident> >> net/rds/tcp_connect.c:132:29: sparse: incorrect type in assignment >> (different base types) @@ expected restricted __be32 [addressable] >> [assigned] [usertype] s_addr @@ got addressable] [assigned] [usertype] >> s_addr @@ net/rds/tcp_connect.c:132:29: expected restricted __be32 [addressable] [assigned] [usertype] s_addr net/rds/tcp_connect.c:132:29: got unsigned int [unsigned] [usertype] <noident> >> net/rds/tcp_connect.c:133:22: sparse: incorrect type in assignment >> (different base types) @@ expected restricted __be16 [addressable] >> [assigned] [usertype] sin_port @@ got [addressable] [assigned] >> [usertype] sin_port @@ net/rds/tcp_connect.c:133:22: expected restricted __be16 [addressable] [assigned] [usertype] sin_port net/rds/tcp_connect.c:133:22: got unsigned short [unsigned] [usertype] <noident> -- net/rds/af_rds.c:226:22: sparse: invalid assignment: |= net/rds/af_rds.c:226:22: left side has type restricted __poll_t net/rds/af_rds.c:226:22: right side has type int >> net/rds/af_rds.c:499:34: sparse: restricted __be32 degrades to integer net/rds/af_rds.c:504:34: sparse: restricted __be32 degrades to integer -- net/rds/bind.c:105:25: sparse: expression using sizeof(void) >> net/rds/bind.c:177:34: sparse: restricted __be32 degrades to integer -- net/rds/send.c:363:39: sparse: expression using sizeof(void) net/rds/send.c:363:39: sparse: expression using sizeof(void) net/rds/send.c:372:39: sparse: expression using sizeof(void) net/rds/send.c:372:39: sparse: expression using sizeof(void) net/rds/send.c:1015:24: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [unsigned] [usertype] a @@ got ed int [unsigned] [usertype] a @@ net/rds/send.c:1015:24: expected unsigned int [unsigned] [usertype] a net/rds/send.c:1015:24: got restricted __be16 [usertype] sin6_port net/rds/send.c:1017:24: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [unsigned] [usertype] a @@ got ed int [unsigned] [usertype] a @@ net/rds/send.c:1017:24: expected unsigned int [unsigned] [usertype] a net/rds/send.c:1017:24: got restricted __be16 [usertype] sin6_port >> net/rds/send.c:1097:43: sparse: restricted __be32 degrades to integer net/rds/send.c:1098:43: sparse: restricted __be32 degrades to integer net/rds/send.c:1149:13: sparse: expression using sizeof(void) net/rds/send.c:1149:13: sparse: expression using sizeof(void) net/rds/send.c:1352:30: sparse: incorrect type in initializer (different base types) @@ expected unsigned short [unsigned] [usertype] npaths @@ got short [unsigned] [usertype] npaths @@ net/rds/send.c:1352:30: expected unsigned short [unsigned] [usertype] npaths net/rds/send.c:1352:30: got restricted __be16 [usertype] <noident> net/rds/send.c:1353:34: sparse: incorrect type in initializer (different base types) @@ expected unsigned int [unsigned] [usertype] my_gen_num @@ got ed int [unsigned] [usertype] my_gen_num @@ net/rds/send.c:1353:34: expected unsigned int [unsigned] [usertype] my_gen_num net/rds/send.c:1353:34: got restricted __be32 [usertype] <noident> -- net/rds/threads.c:157:36: sparse: expression using sizeof(void) net/rds/threads.c:157:36: sparse: expression using sizeof(void) >> net/rds/threads.c:282:19: sparse: incorrect type in assignment (different >> base types) @@ expected restricted __be64 [usertype] x @@ got __be64 >> [usertype] x @@ net/rds/threads.c:282:19: expected restricted __be64 [usertype] x net/rds/threads.c:282:19: got unsigned long long >> net/rds/threads.c:283:19: sparse: incorrect type in assignment (different >> base types) @@ expected restricted __be64 [usertype] y @@ got __be64 >> [usertype] y @@ net/rds/threads.c:283:19: expected restricted __be64 [usertype] y net/rds/threads.c:283:19: got unsigned long long >> net/rds/threads.c:284:21: sparse: restricted __be64 degrades to integer net/rds/threads.c:284:25: sparse: restricted __be64 degrades to integer net/rds/threads.c:286:26: sparse: restricted __be64 degrades to integer net/rds/threads.c:286:30: sparse: restricted __be64 degrades to integer Please review and possibly fold the followup patch. --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation