Hi Xin, 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/Xin-Long/sctp-Implement-RFC6951-UDP-Encapsulation-of-SCTP/20201008-175211 base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 9faebeb2d80065926dfbc09cb73b1bb7779a89cd config: i386-randconfig-s002-20201008 (attached as .config) compiler: gcc-9 (Debian 9.3.0-15) 9.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.2-218-gc0e96d6d-dirty # https://github.com/0day-ci/linux/commit/9119d2be86deb6950b26b152a51ddad0a95182a5 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Xin-Long/sctp-Implement-RFC6951-UDP-Encapsulation-of-SCTP/20201008-175211 git checkout 9119d2be86deb6950b26b152a51ddad0a95182a5 # save the attached .config to linux build tree make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=i386 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot echo echo "sparse warnings: (new ones prefixed by >>)" echo net/sctp/sm_make_chunk.c: note: in included file (through include/net/sctp/sctp.h): include/net/sctp/structs.h:334:41: sparse: sparse: array of flexible structures >> net/sctp/sm_make_chunk.c:1157:24: sparse: sparse: cast from restricted __be16 >> net/sctp/sm_make_chunk.c:1157:24: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short [usertype] val @@ got restricted __be16 [usertype] encap_port @@ >> net/sctp/sm_make_chunk.c:1157:24: sparse: expected unsigned short [usertype] val >> net/sctp/sm_make_chunk.c:1157:24: sparse: got restricted __be16 [usertype] encap_port >> net/sctp/sm_make_chunk.c:1157:24: sparse: sparse: cast from restricted __be16 >> net/sctp/sm_make_chunk.c:1157:24: sparse: sparse: cast from restricted __be16 net/sctp/sm_make_chunk.c:1158:24: sparse: sparse: cast from restricted __be16 net/sctp/sm_make_chunk.c:1158:24: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short [usertype] val @@ got restricted __be16 [usertype] encap_port @@ net/sctp/sm_make_chunk.c:1158:24: sparse: expected unsigned short [usertype] val net/sctp/sm_make_chunk.c:1158:24: sparse: got restricted __be16 [usertype] encap_port net/sctp/sm_make_chunk.c:1158:24: sparse: sparse: cast from restricted __be16 net/sctp/sm_make_chunk.c:1158:24: sparse: sparse: cast from restricted __be16 net/sctp/sm_make_chunk.c:3081:48: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int optname @@ got restricted __be16 @@ net/sctp/sm_make_chunk.c:3081:48: sparse: expected int optname net/sctp/sm_make_chunk.c:3081:48: sparse: got restricted __be16 net/sctp/sm_make_chunk.c:3153:48: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int optname @@ got restricted __be16 @@ net/sctp/sm_make_chunk.c:3153:48: sparse: expected int optname net/sctp/sm_make_chunk.c:3153:48: sparse: got restricted __be16 vim +1157 net/sctp/sm_make_chunk.c 1144 1145 struct sctp_chunk *sctp_make_new_encap_port(const struct sctp_association *asoc, 1146 const struct sctp_chunk *chunk) 1147 { 1148 struct sctp_new_encap_port_hdr nep; 1149 struct sctp_chunk *retval; 1150 1151 retval = sctp_make_abort(asoc, chunk, 1152 sizeof(struct sctp_errhdr) + sizeof(nep)); 1153 if (!retval) 1154 goto nodata; 1155 1156 sctp_init_cause(retval, SCTP_ERROR_NEW_ENCAP_PORT, sizeof(nep)); > 1157 nep.cur_port = htons(SCTP_INPUT_CB(chunk->skb)->encap_port); 1158 nep.new_port = htons(chunk->transport->encap_port); 1159 sctp_addto_chunk(retval, sizeof(nep), &nep); 1160 1161 nodata: 1162 return retval; 1163 } 1164 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org