Commit 71fc7047 authored by Mubashir Adnan Qureshi's avatar Mubashir Adnan Qureshi Committed by David S. Miller
Browse files

tcp: add rcv_wnd and plb_rehash to TCP_INFO



rcv_wnd can be useful to diagnose TCP performance where receiver window
becomes the bottleneck. rehash reports the PLB and timeout triggered
rehash attempts by the TCP connection.

Signed-off-by: default avatarMubashir Adnan Qureshi <mubashirq@google.com>
Signed-off-by: default avatarYuchung Cheng <ycheng@google.com>
Signed-off-by: default avatarNeal Cardwell <ncardwell@google.com>
Reviewed-by: default avatarEric Dumazet <edumazet@google.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 29c1c446
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -284,6 +284,11 @@ struct tcp_info {
	__u32	tcpi_snd_wnd;	     /* peer's advertised receive window after
				      * scaling (bytes)
				      */
	__u32	tcpi_rcv_wnd;	     /* local advertised receive window after
				      * scaling (bytes)
				      */

	__u32   tcpi_rehash;         /* PLB or timeout triggered rehash attempts */
};

/* netlink attributes types for SCM_TIMESTAMPING_OPT_STATS */
+2 −0
Original line number Diff line number Diff line
@@ -3940,6 +3940,8 @@ void tcp_get_info(struct sock *sk, struct tcp_info *info)
	info->tcpi_reord_seen = tp->reord_seen;
	info->tcpi_rcv_ooopack = tp->rcv_ooopack;
	info->tcpi_snd_wnd = tp->snd_wnd;
	info->tcpi_rcv_wnd = tp->rcv_wnd;
	info->tcpi_rehash = tp->plb_rehash + tp->timeout_rehash;
	info->tcpi_fastopen_client_fail = tp->fastopen_client_fail;
	unlock_sock_fast(sk, slow);
}