diff --git a/net/ipv4/inet_lro.c b/net/ipv4/inet_lro.c index 6a667da..d16c9d5 100644 --- a/net/ipv4/inet_lro.c +++ b/net/ipv4/inet_lro.c @@ -90,9 +90,9 @@ static int lro_tcp_ip_check(struct iphdr *iph, struct tcphdr *tcph, ntohl(*topt))) return -1; - /* timestamp reply should not be zero */ + /* aggregate if we are sure we won't miss a valid TSecr */ topt++; - if (*topt == 0) + if (*topt == 0 && lro_desc->tcp_rcv_tsecr != 0) return -1; }