Index: sys/netinet/tcp_lro.c =================================================================== --- sys/netinet/tcp_lro.c +++ sys/netinet/tcp_lro.c @@ -1948,7 +1948,12 @@ m_freem(mb); return; } - + /* Get a more accurate view of when the packet arrived if hdwr tstmp is lacking */ + if ((mb->m_flags & (M_TSTMP_LRO | M_TSTMP)) == 0) { + binuptime(&lc->lro_last_queue_time); + mb->m_pkthdr.rcv_tstmp = bintime2ns(&lc->lro_last_queue_time); + mb->m_flags |= M_TSTMP_LRO; + } /* check if packet is not LRO capable */ if (__predict_false((lc->ifp->if_capenable & IFCAP_LRO) == 0)) { /* input packet to network layer */