diff options
author | Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> | 2007-08-09 08:14:46 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-10-10 19:48:00 -0400 |
commit | e60402d0a909ca2e6e2fbdf9ed004ef0fae36d33 (patch) | |
tree | b40a00b801cf44f81bebd7dadddb19c0086b145c /net/ipv4/tcp_output.c | |
parent | b9c4595bc4947faa236a849324fe3492e388d949 (diff) |
[TCP]: Move sack_ok access to obviously named funcs & cleanup
Previously code had IsReno/IsFack defined as macros that were
local to tcp_input.c though sack_ok field has user elsewhere too
for the same purpose. This changes them to static inlines as
preferred according the current coding style and unifies the
access to sack_ok across multiple files. Magic bitops of sack_ok
for FACK and DSACK are also abstracted to functions with
appropriate names.
Note:
- One sack_ok = 1 remains but that's self explanary, i.e., it
enables sack
- Couple of !IsReno cases are changed to tcp_is_sack
- There were no users for IsDSack => I dropped it
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_output.c')
-rw-r--r-- | net/ipv4/tcp_output.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index a92fad55cd32..a3679174e78a 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c | |||
@@ -737,7 +737,7 @@ int tcp_fragment(struct sock *sk, struct sk_buff *skb, u32 len, unsigned int mss | |||
737 | 737 | ||
738 | if (diff > 0) { | 738 | if (diff > 0) { |
739 | /* Adjust Reno SACK estimate. */ | 739 | /* Adjust Reno SACK estimate. */ |
740 | if (!tp->rx_opt.sack_ok) { | 740 | if (tcp_is_reno(tp)) { |
741 | tcp_dec_pcount_approx_int(&tp->sacked_out, diff); | 741 | tcp_dec_pcount_approx_int(&tp->sacked_out, diff); |
742 | tcp_verify_left_out(tp); | 742 | tcp_verify_left_out(tp); |
743 | } | 743 | } |
@@ -1728,7 +1728,7 @@ static void tcp_retrans_try_collapse(struct sock *sk, struct sk_buff *skb, int m | |||
1728 | if (TCP_SKB_CB(next_skb)->sacked&TCPCB_LOST) | 1728 | if (TCP_SKB_CB(next_skb)->sacked&TCPCB_LOST) |
1729 | tp->lost_out -= tcp_skb_pcount(next_skb); | 1729 | tp->lost_out -= tcp_skb_pcount(next_skb); |
1730 | /* Reno case is special. Sigh... */ | 1730 | /* Reno case is special. Sigh... */ |
1731 | if (!tp->rx_opt.sack_ok && tp->sacked_out) | 1731 | if (tcp_is_reno(tp) && tp->sacked_out) |
1732 | tcp_dec_pcount_approx(&tp->sacked_out, next_skb); | 1732 | tcp_dec_pcount_approx(&tp->sacked_out, next_skb); |
1733 | 1733 | ||
1734 | /* Not quite right: it can be > snd.fack, but | 1734 | /* Not quite right: it can be > snd.fack, but |
@@ -1976,7 +1976,7 @@ void tcp_xmit_retransmit_queue(struct sock *sk) | |||
1976 | return; | 1976 | return; |
1977 | 1977 | ||
1978 | /* No forward retransmissions in Reno are possible. */ | 1978 | /* No forward retransmissions in Reno are possible. */ |
1979 | if (!tp->rx_opt.sack_ok) | 1979 | if (tcp_is_reno(tp)) |
1980 | return; | 1980 | return; |
1981 | 1981 | ||
1982 | /* Yeah, we have to make difficult choice between forward transmission | 1982 | /* Yeah, we have to make difficult choice between forward transmission |