Lines Matching defs:start_seq
996 static u32 tcp_dsack_seen(struct tcp_sock *tp, u32 start_seq,
1001 if (!before(start_seq, end_seq))
1004 seq_len = end_seq - start_seq;
1178 * Implements also blockage to start_seq wrap-around. Problem lies in the
1179 * fact that though start_seq (s) is before end_seq (i.e., not reversed),
1181 * happens when start_seq resides between end_seq wrap (e_w) and snd_nxt
1192 * crazy SACK blocks. Doing this check for start_seq alone closes somewhat
1211 u32 start_seq, u32 end_seq)
1214 if (after(end_seq, tp->snd_nxt) || !before(start_seq, end_seq))
1217 /* Nasty start_seq wrap-around check (see comments above) */
1218 if (!before(start_seq, tp->snd_nxt))
1222 * start_seq == snd_una is non-sensical (see comments above)
1224 if (after(start_seq, tp->snd_una))
1234 if (!before(start_seq, tp->undo_marker))
1242 * start_seq < undo_marker and end_seq >= undo_marker.
1244 return !before(start_seq, end_seq - tp->max_window);
1252 u32 start_seq_0 = get_unaligned_be32(&sp[0].start_seq);
1260 u32 start_seq_1 = get_unaligned_be32(&sp[1].start_seq);
1295 u32 start_seq, u32 end_seq)
1302 in_sack = !after(start_seq, TCP_SKB_CB(skb)->seq) &&
1306 after(TCP_SKB_CB(skb)->end_seq, start_seq)) {
1308 in_sack = !after(start_seq, TCP_SKB_CB(skb)->seq);
1311 pkt_len = start_seq - TCP_SKB_CB(skb)->seq;
1345 u32 start_seq, u32 end_seq,
1357 before(start_seq, state->reord))
1358 state->reord = start_seq;
1383 if (before(start_seq,
1385 before(start_seq, state->reord))
1386 state->reord = start_seq;
1409 before(start_seq, TCP_SKB_CB(tp->lost_skb_hint)->seq))
1435 u32 start_seq = TCP_SKB_CB(skb)->seq; /* start of newly-SACKed */
1436 u32 end_seq = start_seq + shifted; /* end of newly-SACKed */
1447 start_seq, end_seq, dup_sack, pcount,
1544 u32 start_seq, u32 end_seq,
1575 in_sack = !after(start_seq, TCP_SKB_CB(skb)->seq) &&
1589 if (!after(TCP_SKB_CB(skb)->end_seq, start_seq))
1598 in_sack = !after(start_seq, TCP_SKB_CB(skb)->seq);
1683 u32 start_seq, u32 end_seq,
1700 next_dup->start_seq,
1712 start_seq, end_seq, dup_sack);
1722 start_seq,
1791 if (before(next_dup->start_seq, skip_to_seq)) {
1792 skb = tcp_sacktag_skip(skb, sk, next_dup->start_seq);
1794 next_dup->start_seq, next_dup->end_seq,
1847 sp[used_sacks].start_seq = get_unaligned_be32(&sp_wire[i].start_seq);
1851 sp[used_sacks].start_seq,
1887 if (after(sp[j].start_seq, sp[j + 1].start_seq)) {
1907 while (tcp_sack_cache_ok(tp, cache) && !cache->start_seq &&
1913 u32 start_seq = sp[i].start_seq;
1923 !before(start_seq, cache->end_seq))
1928 after(end_seq, cache->start_seq)) {
1931 if (before(start_seq, cache->start_seq)) {
1932 skb = tcp_sacktag_skip(skb, sk, start_seq);
1935 start_seq,
1936 cache->start_seq,
1964 if (!before(start_seq, tcp_highest_sack_seq(tp))) {
1969 skb = tcp_sacktag_skip(skb, sk, start_seq);
1973 start_seq, end_seq, dup_sack);
1981 tp->recv_sack_cache[i].start_seq = 0;
3246 const u32 start_seq = scb->seq;
3275 if (before(start_seq, reord))
3276 reord = start_seq;
4418 if (!after(seq, sp->end_seq) && !after(sp->start_seq, end_seq)) {
4419 if (before(seq, sp->start_seq))
4420 sp->start_seq = seq;
4443 tp->duplicate_sack[0].start_seq = seq;
4465 if (TCP_SKB_CB(skb)->seq == tcp_sk(sk)->duplicate_sack[0].start_seq &&
4505 if (tcp_sack_extend(sp, swalk->start_seq, swalk->end_seq)) {
4590 sp->start_seq = seq;
4611 if (!before(tp->rcv_nxt, sp->start_seq)) {
4806 tp->selective_acks[0].start_seq = seq;