Paolo noticed a compile warning in SCTP, ../net/sctp/stream_sched_fc.c: note: in included file (through ../include/net/sctp/sctp.h): ../include/net/sctp/structs.h:335:41: warning: array of flexible structures But not only this, there are actually quite a lot of such warnings in some SCTP structs. This patchset fixes most of warnings by deleting these nested flexible array members. After this patchset, there are still some warnings left: # make C=2 CF="-Wflexible-array-nested" M=./net/sctp/ ./include/net/sctp/structs.h:1145:41: warning: nested flexible array ./include/uapi/linux/sctp.h:641:34: warning: nested flexible array ./include/uapi/linux/sctp.h:643:34: warning: nested flexible array ./include/uapi/linux/sctp.h:644:33: warning: nested flexible array ./include/uapi/linux/sctp.h:650:40: warning: nested flexible array ./include/uapi/linux/sctp.h:653:39: warning: nested flexible array the 1st is caused by __data[] in struct ip_options, not in SCTP; the others are in uapi, and we should not touch them. Note that instead of completely deleting it, we just leave it as a comment in the struct, signalling to the reader that we do expect such variable parameters over there, as Marcelo suggested. Xin Long (6): sctp: delete the nested flexible array params sctp: delete the nested flexible array skip sctp: delete the nested flexible array variable sctp: delete the nested flexible array peer_init sctp: delete the nested flexible array hmac sctp: delete the nested flexible array payload include/linux/sctp.h | 18 +++++++++--------- include/net/sctp/sctp.h | 12 ++++++------ include/net/sctp/structs.h | 2 +- net/sctp/associola.c | 5 +++-- net/sctp/auth.c | 2 +- net/sctp/input.c | 2 +- net/sctp/outqueue.c | 11 +++++++---- net/sctp/sm_make_chunk.c | 22 +++++++++++----------- net/sctp/sm_sideeffect.c | 3 +-- net/sctp/sm_statefuns.c | 14 ++++++-------- net/sctp/stream.c | 2 +- net/sctp/stream_interleave.c | 4 ++-- 12 files changed, 49 insertions(+), 48 deletions(-) -- 2.39.1