|
@@ -60,6 +60,7 @@ struct tcp_log {
|
|
|
u32 snd_nxt;
|
|
|
u32 snd_una;
|
|
|
u32 snd_wnd;
|
|
|
+ u32 rcv_wnd;
|
|
|
u32 snd_cwnd;
|
|
|
u32 ssthresh;
|
|
|
u32 srtt;
|
|
@@ -116,6 +117,7 @@ static int jtcp_rcv_established(struct sock *sk, struct sk_buff *skb,
|
|
|
p->snd_una = tp->snd_una;
|
|
|
p->snd_cwnd = tp->snd_cwnd;
|
|
|
p->snd_wnd = tp->snd_wnd;
|
|
|
+ p->rcv_wnd = tp->rcv_wnd;
|
|
|
p->ssthresh = tcp_current_ssthresh(sk);
|
|
|
p->srtt = tp->srtt >> 3;
|
|
|
|
|
@@ -157,13 +159,13 @@ static int tcpprobe_sprint(char *tbuf, int n)
|
|
|
= ktime_to_timespec(ktime_sub(p->tstamp, tcp_probe.start));
|
|
|
|
|
|
return scnprintf(tbuf, n,
|
|
|
- "%lu.%09lu %pI4:%u %pI4:%u %d %#x %#x %u %u %u %u\n",
|
|
|
+ "%lu.%09lu %pI4:%u %pI4:%u %d %#x %#x %u %u %u %u %u\n",
|
|
|
(unsigned long) tv.tv_sec,
|
|
|
(unsigned long) tv.tv_nsec,
|
|
|
&p->saddr, ntohs(p->sport),
|
|
|
&p->daddr, ntohs(p->dport),
|
|
|
p->length, p->snd_nxt, p->snd_una,
|
|
|
- p->snd_cwnd, p->ssthresh, p->snd_wnd, p->srtt);
|
|
|
+ p->snd_cwnd, p->ssthresh, p->snd_wnd, p->srtt, p->rcv_wnd);
|
|
|
}
|
|
|
|
|
|
static ssize_t tcpprobe_read(struct file *file, char __user *buf,
|