ss: add support for rcv_wnd and rehash

tcpi_rcv_wnd and tcpi_rehash were added in linux-6.2.

$ ss -ti
...
 cubic wscale:7,7 ... minrtt:0.01 snd_wnd:65536 rcv_wnd:458496

Signed-off-by: Eric Dumazet <edumazet@google.com>
Acked-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
This commit is contained in:
Eric Dumazet 2023-10-31 11:17:20 +00:00 committed by Stephen Hemminger
parent 8a20feb638
commit ef335508a8

View File

@ -865,6 +865,8 @@ struct tcpstat {
double min_rtt;
unsigned int rcv_ooopack;
unsigned int snd_wnd;
unsigned int rcv_wnd;
unsigned int rehash;
int rcv_space;
unsigned int rcv_ssthresh;
unsigned long long busy_time;
@ -2711,6 +2713,10 @@ static void tcp_stats_print(struct tcpstat *s)
out(" rcv_ooopack:%u", s->rcv_ooopack);
if (s->snd_wnd)
out(" snd_wnd:%u", s->snd_wnd);
if (s->rcv_wnd)
out(" rcv_wnd:%u", s->rcv_wnd);
if (s->rehash)
out(" rehash:%u", s->rehash);
}
static void tcp_timer_print(struct tcpstat *s)
@ -3147,6 +3153,8 @@ static void tcp_show_info(const struct nlmsghdr *nlh, struct inet_diag_msg *r,
s.bytes_retrans = info->tcpi_bytes_retrans;
s.rcv_ooopack = info->tcpi_rcv_ooopack;
s.snd_wnd = info->tcpi_snd_wnd;
s.rcv_wnd = info->tcpi_rcv_wnd;
s.rehash = info->tcpi_rehash;
tcp_stats_print(&s);
free(s.dctcp);
free(s.bbr_info);