提交 73dca124 编写于 作者: X Xin Long 提交者: David S. Miller

sctp: move sent_count to the memory hole in sctp_chunk

Now pahole sctp_chunk, it has 2 memory holes:
   struct sctp_chunk {
	struct list_head           list;
	atomic_t                   refcnt;
	/* XXX 4 bytes hole, try to pack */
	...
	long unsigned int          prsctp_param;
	int                        sent_count;
	/* XXX 4 bytes hole, try to pack */

This patch is to move up sent_count to fill the 1st one and eliminate
the 2nd one.

It's not just another struct compaction, it also fixes the "netperf-
Throughput_Mbps -37.2% regression" issue when overloading the CPU.

Fixes: a6c2f792 ("sctp: implement prsctp TTL policy")
Signed-off-by: NXin Long <lucien.xin@gmail.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 1b0ff898
......@@ -554,6 +554,9 @@ struct sctp_chunk {
atomic_t refcnt;
/* How many times this chunk have been sent, for prsctp RTX policy */
int sent_count;
/* This is our link to the per-transport transmitted list. */
struct list_head transmitted_list;
......@@ -610,9 +613,6 @@ struct sctp_chunk {
*/
unsigned long prsctp_param;
/* How many times this chunk have been sent, for prsctp RTX policy */
int sent_count;
/* Which association does this belong to? */
struct sctp_association *asoc;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册