Lines Matching refs:le

152     const struct lro_entry *le, const struct mbuf *m,
169 if (le->m_head) {
170 log.u_bbr.flex3 = le->m_head->m_pkthdr.lro_nsegs;
171 log.u_bbr.flex4 = le->m_head->m_pkthdr.lro_tcp_d_len;
172 log.u_bbr.flex5 = le->m_head->m_pkthdr.len;
173 log.u_bbr.delRate = le->m_head->m_flags;
174 log.u_bbr.rttProp = le->m_head->m_pkthdr.rcv_tstmp;
179 log.u_bbr.epoch = le->next_seq;
180 log.u_bbr.lt_epoch = le->ack_seq;
182 log.u_bbr.cwnd_gain = le->window;
185 log.u_bbr.bw_inuse = (uintptr_t)le->m_head;
188 log.u_bbr.flex7 = le->compressed;
189 log.u_bbr.pacing_gain = le->uncompressed;
201 tcp_lro_get_last_if_ackcmp(struct lro_ctrl *lc, struct lro_entry *le,
211 tcp_lro_log(tp, lc, le, NULL, 23, 0, 0, 0, 0);
222 tcp_lro_log(tp, lc, le, NULL, 21, 0, 0, 0, 0);
245 struct lro_entry *le, struct mbuf **pp, struct mbuf **cmp,
277 lro_type = le->inner.data.lro_type;
280 lro_type = le->outer.data.lro_type;
283 tcp_hdr_offset -= sizeof(*le->outer.ip4);
285 IP_PROBE(receive, NULL, NULL, le->outer.ip4, lc->ifp,
286 le->outer.ip4, NULL);
289 tcp_hdr_offset -= sizeof(*le->outer.ip6);
291 IP_PROBE(receive, NULL, NULL, le->outer.ip6, lc->ifp,
292 NULL, le->outer.ip6);
299 switch (le->outer.data.lro_type) {
301 IP_PROBE(receive, NULL, NULL, le->outer.ip4, lc->ifp,
302 le->outer.ip4, NULL);
303 UDP_PROBE(receive, NULL, NULL, le->outer.ip4, NULL,
304 le->outer.udp);
307 IP_PROBE(receive, NULL, NULL, le->outer.ip6, lc->ifp,
308 NULL, le->outer.ip6);
309 UDP_PROBE(receive, NULL, NULL, le->outer.ip6, NULL,
310 le->outer.udp);
316 tcp_hdr_offset -= sizeof(*le->outer.ip4);
318 IP_PROBE(receive, NULL, NULL, le->inner.ip4, NULL,
319 le->inner.ip4, NULL);
322 switch (le->outer.data.lro_type) {
324 IP_PROBE(receive, NULL, NULL, le->outer.ip4, lc->ifp,
325 le->outer.ip4, NULL);
326 UDP_PROBE(receive, NULL, NULL, le->outer.ip4, NULL,
327 le->outer.udp);
330 IP_PROBE(receive, NULL, NULL, le->outer.ip6, lc->ifp,
331 NULL, le->outer.ip6);
332 UDP_PROBE(receive, NULL, NULL, le->outer.ip6, NULL,
333 le->outer.udp);
339 tcp_hdr_offset -= sizeof(*le->outer.ip6);
341 IP_PROBE(receive, NULL, NULL, le->inner.ip6, NULL, NULL,
342 le->inner.ip6);
400 nm = tcp_lro_get_last_if_ackcmp(lc, le, tp, &n_mbuf,
434 le->compressed++;
451 le->uncompressed++;
456 tcp_queue_pkts(struct tcpcb *tp, struct lro_entry *le)
461 STAILQ_HEAD(, mbuf) q = { le->m_head,
462 &STAILQ_NEXT(le->m_last_mbuf, m_stailqpkt) };
464 le->m_head = NULL;
465 le->m_last_mbuf = NULL;
505 _tcp_lro_flush_tcphpts(struct lro_ctrl *lc, struct lro_entry *le)
514 (le->outer.data.vlan_id != 0) ||
515 (le->inner.data.lro_type != LRO_TYPE_NONE))
527 if (__predict_false(le->outer.data.lro_type == LRO_TYPE_IPV6_TCP &&
528 IN6_IS_ADDR_UNSPECIFIED(&le->outer.data.s_addr.v6)))
531 if (__predict_false(le->inner.data.lro_type == LRO_TYPE_IPV6_TCP &&
532 IN6_IS_ADDR_UNSPECIFIED(&le->inner.data.s_addr.v6)))
555 (le->inner.data.lro_type == LRO_TYPE_NONE) ? &le->outer : &le->inner);
596 for (pp = &le->m_head; *pp != NULL; ) {
598 if (do_bpf_strip_and_compress(tp, lc, le, pp, &cmp, &mv_to,
614 tcp_lro_log(tp, lc, le, NULL, 25, 0, 0, 0, 0);
618 tcp_lro_log(tp, lc, le, NULL, 24, 0, 0, 0, 0);
620 tcp_lro_log(tp, lc, le, NULL, 26, 0, 0, 0, 0);
623 if (pp == &le->m_head)
624 le->m_last_mbuf = *pp;
626 le->m_last_mbuf = __containerof(pp, struct mbuf, m_nextpkt);
629 if (le->m_head != NULL) {
631 tcp_lro_log(tp, lc, le, NULL, 22, 1, tp->t_flags2, 0, 1);
632 tcp_queue_pkts(tp, le);