aboutsummaryrefslogtreecommitdiff
path: root/include/net
diff options
context:
space:
mode:
authorIlpo Järvinen <ilpo.jarvinen@helsinki.fi>2007-08-09 14:37:30 +0300
committerDavid S. Miller <davem@sunset.davemloft.net>2007-10-10 16:47:56 -0700
commit83ae40885f33e406c87c86b0bd4b6fd31a741f12 (patch)
tree659de08c231db85ec46f0c3bc1b86252a6561e21 /include/net
parentb5860bbac7be1381626f3dc8a0cb970a60fcefb4 (diff)
[TCP]: Add tcp_left_out(tp) "back" to get cleaner looking lines
tp->left_out got removed but nothing came to replace it back then (users just did addition by themselves), so add function for users now. Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r--include/net/tcp.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/include/net/tcp.h b/include/net/tcp.h
index 299872d461c..39d0df6afe4 100644
--- a/include/net/tcp.h
+++ b/include/net/tcp.h
@@ -719,6 +719,11 @@ static inline void tcp_ca_event(struct sock *sk, const enum tcp_ca_event event)
icsk->icsk_ca_ops->cwnd_event(sk, event);
}
+static inline unsigned int tcp_left_out(const struct tcp_sock *tp)
+{
+ return tp->sacked_out + tp->lost_out;
+}
+
/* This determines how many packets are "in the network" to the best
* of our knowledge. In many cases it is conservative, but where
* detailed information is available from the receiver (via SACK
@@ -735,8 +740,7 @@ static inline void tcp_ca_event(struct sock *sk, const enum tcp_ca_event event)
*/
static inline unsigned int tcp_packets_in_flight(const struct tcp_sock *tp)
{
- return tp->packets_out - (tp->sacked_out + tp->lost_out) +
- tp->retrans_out;
+ return tp->packets_out - tcp_left_out(tp) + tp->retrans_out;
}
/* If cwnd > ssthresh, we may raise ssthresh to be half-way to cwnd.
@@ -756,8 +760,7 @@ static inline __u32 tcp_current_ssthresh(const struct sock *sk)
static inline void tcp_sync_left_out(struct tcp_sock *tp)
{
- BUG_ON(tp->rx_opt.sack_ok &&
- (tp->sacked_out + tp->lost_out > tp->packets_out));
+ BUG_ON(tp->rx_opt.sack_ok && (tcp_left_out(tp) > tp->packets_out));
}
extern void tcp_enter_cwr(struct sock *sk, const int set_ssthresh);