!71 Fix NewIP ofo last_skb issues

Merge pull request !71 from 史云飞/master
This commit is contained in:
openharmony_ci
2023-04-14 07:56:53 +00:00
committed by Gitee
+9 -1
View File
@@ -340,7 +340,15 @@ coalesce_done:
goto insert;
}
if (after(seq, TCP_SKB_CB(tp->ooo_last_skb)->seq)) {
if (!before(seq, TCP_SKB_CB(tp->ooo_last_skb)->seq)) {
if (!after(end_seq, TCP_SKB_CB(tp->ooo_last_skb)->end_seq)) {
/* ooo_last_skb->seq <= seq, end_seq <= ooo_last_skb->end_seq */
nip_dbg("ooo_last_skb completely overlapping new skb, drop pkt");
NET_INC_STATS(sock_net(sk), LINUX_MIB_TCPOFOMERGE);
tcp_nip_drop(sk, skb);
skb = NULL;
goto end;
}
tcp_nip_left_overlap(skb, tp->ooo_last_skb);
if (tcp_nip_ooo_try_coalesce(sk, tp->ooo_last_skb, skb, &fragstolen)) {
nip_dbg("ofo skb coalesce ooo_last_skb done");