On Mon, Jan 23, 2017 at 10:58:10AM -0500, David Miller wrote: > If this is "so critical" for end to end communication, why the heck > do you not see __packed sprinkled all over our definitions for IPV4, > IPV6, TCP, UDP, etc. headers? > > Do you know why? Because it's completely unnecessary... Btw, virtually all sctp headers are currently tagged with __packed, since forever. $ git grep __packed -- include/linux/sctp.h include/linux/sctp.h:} __packed sctp_sctphdr_t; include/linux/sctp.h:} __packed sctp_chunkhdr_t; include/linux/sctp.h:} __packed sctp_paramhdr_t; include/linux/sctp.h:} __packed sctp_datahdr_t; include/linux/sctp.h:} __packed sctp_data_chunk_t; include/linux/sctp.h:} __packed sctp_inithdr_t; include/linux/sctp.h:} __packed sctp_init_chunk_t; include/linux/sctp.h:} __packed sctp_ipv4addr_param_t; include/linux/sctp.h:} __packed sctp_ipv6addr_param_t; include/linux/sctp.h:} __packed sctp_cookie_preserve_param_t; include/linux/sctp.h:} __packed sctp_hostname_param_t; include/linux/sctp.h:} __packed sctp_supported_addrs_param_t; include/linux/sctp.h:} __packed sctp_ecn_capable_param_t; include/linux/sctp.h:} __packed sctp_adaptation_ind_param_t; include/linux/sctp.h:} __packed sctp_supported_ext_param_t; include/linux/sctp.h:} __packed sctp_random_param_t; include/linux/sctp.h:} __packed sctp_chunks_param_t; include/linux/sctp.h:} __packed sctp_hmac_algo_param_t; include/linux/sctp.h:} __packed sctp_cookie_param_t; include/linux/sctp.h:} __packed sctp_unrecognized_param_t; include/linux/sctp.h:} __packed sctp_gap_ack_block_t; include/linux/sctp.h:} __packed sctp_sackhdr_t; include/linux/sctp.h:} __packed sctp_sack_chunk_t; include/linux/sctp.h:} __packed sctp_heartbeathdr_t; include/linux/sctp.h:} __packed sctp_heartbeat_chunk_t; include/linux/sctp.h:} __packed sctp_abort_chunk_t; include/linux/sctp.h:} __packed sctp_shutdownhdr_t; include/linux/sctp.h:} __packed; include/linux/sctp.h:} __packed sctp_errhdr_t; include/linux/sctp.h:} __packed sctp_operr_chunk_t; include/linux/sctp.h:} __packed sctp_ecne_chunk_t; include/linux/sctp.h:} __packed sctp_cwr_chunk_t; ... ^1da177e4c3f4 (Linus Torvalds 2005-04-16 15:20:36 -0700 64) } __attribute__((packed)) sctp_sctphdr_t; I'm reviewing them all and will probably post a patch to remove them. Marcelo -- To unsubscribe from this list: send the line "unsubscribe linux-sctp" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html