Re: [PATCH net-next 1/2] tcp: measure rwnd-limited time
flat view
From: Yuchung Cheng <hidden>
Date: 2016-09-08 15:32:27
On Wed, Sep 7, 2016 at 5:27 PM, David Miller [off-list ref] wrote:
From: "Francis Y. Yan" <redacted> Date: Tue, 6 Sep 2016 18:32:40 -0700quoted
diff --git a/include/linux/tcp.h b/include/linux/tcp.h index 7be9b12..f5b588e 100644 --- a/include/linux/tcp.h +++ b/include/linux/tcp.h@@ -176,6 +176,7 @@ struct tcp_sock { * were acked. */ struct u64_stats_sync syncp; /* protects 64bit vars (cf tcp_get_info()) */ + seqcount_t seqcnt; /* proctects rwnd-limited-related vars, etc. */ u32 snd_una; /* First byte we want an ack for */ u32 snd_sml; /* Last byte of the most recently transmitted small packet */@@ -204,6 +205,8 @@ struct tcp_sock { u32 window_clamp; /* Maximal window to advertise */ u32 rcv_ssthresh; /* Current window clamp */ + struct skb_mstamp rwnd_limited_ts; /* Last timestamp limited by rwnd */ + u64 rwnd_limited; /* Total time (us) limited by rwnd */ /* Information of the most recently (s)acked skb */ struct tcp_rack {I understand completely the usefulness of this change, but wow that is a lot of new TCP socket space taken up just to export some time values in tcp_info for debugging and statistics.
Thanks for raising the concern. The space requirement and timing resolution should indeed be justified better on the motivation and the dev plan. We would resubmit a v2 with a cover letter detailing those.