| /freebsd-11-stable/sys/dev/nxge/xgehal/ |
| HD | xgehal-device-fp.c | 698 __hal_lro_check_for_session_match(lro_t *lro, tcplro_t *tcp, iplro_t *ip) in __hal_lro_check_for_session_match() argument 702 if ((lro->ip_hdr->saddr != ip->saddr)) in __hal_lro_check_for_session_match() 706 if ((lro->ip_hdr->daddr != ip->daddr)) in __hal_lro_check_for_session_match() 710 if ((lro->tcp_hdr->source != tcp->source)) in __hal_lro_check_for_session_match() 714 if ((lro->tcp_hdr->dest != tcp->dest)) in __hal_lro_check_for_session_match() 779 __hal_tcp_lro_capable(iplro_t *ip, tcplro_t *tcp, lro_t *lro, int *ts_off) in __hal_tcp_lro_capable() argument 809 if (lro == NULL) in __hal_tcp_lro_capable() 825 if (lro == NULL) in __hal_tcp_lro_capable() 832 if (lro == NULL) in __hal_tcp_lro_capable() 840 if (lro->ts_off == -1) { in __hal_tcp_lro_capable() [all …]
|
| /freebsd-11-stable/tools/tools/netrate/tcpp/ |
| HD | runit.pl | 37 my ($kernel, $tso, $lro, $mtu) = @_; 39 $prefix = "$kernel,$tso,$lro,$mtu"; 42 system("ssh root\@hydra1 ifconfig cxgb0 $tso $lro mtu $mtu"); 44 system("ssh root\@hydra2 ifconfig cxgb0 $tso $lro mtu $mtu"); 59 foreach $lro (@lro_options) { 61 test($kernel, $tso, $lro, $mtu);
|
| /freebsd-11-stable/sys/dev/sfxge/ |
| HD | sfxge_rx.c | 74 SYSCTL_NODE(_hw_sfxge, OID_AUTO, lro, CTLFLAG_RD, NULL, 77 #define SFXGE_LRO_PARAM(_param) SFXGE_PARAM(lro._param) 432 bucket = c->conn_hash & rxq->lro.conns_mask; in sfxge_lro_drop() 433 KASSERT(rxq->lro.conns_n[bucket] > 0, ("LRO: bucket fill level wrong")); in sfxge_lro_drop() 434 --rxq->lro.conns_n[bucket]; in sfxge_lro_drop() 435 TAILQ_REMOVE(&rxq->lro.conns[bucket], c, link); in sfxge_lro_drop() 436 TAILQ_INSERT_HEAD(&rxq->lro.free_conns, c, link); in sfxge_lro_drop() 447 KASSERT(LIST_EMPTY(&rxq->lro.active_conns), in sfxge_lro_purge_idle() 450 rxq->lro.last_purge_ticks = now; in sfxge_lro_purge_idle() 451 for (i = 0; i <= rxq->lro.conns_mask; ++i) { in sfxge_lro_purge_idle() [all …]
|
| HD | sfxge_rx.h | 170 struct sfxge_lro_state lro; member
|
| /freebsd-11-stable/sys/dev/qlxgbe/ |
| HD | ql_isr.c | 71 struct lro_ctrl *lro; in qla_rx_intr() local 73 lro = &ha->hw.sds[sds_idx].lro; in qla_rx_intr() 180 tcp_lro_queue_mbuf(lro, mpf); in qla_rx_intr() 183 if (tcp_lro_rx(lro, mpf, 0)) in qla_rx_intr() 631 sgc.lro.payload_length = in ql_rcv_isr() 634 sgc.lro.rss_hash = in ql_rcv_isr() 637 sgc.lro.num_handles = 1; in ql_rcv_isr() 638 sgc.lro.handle[0] = in ql_rcv_isr() 642 sgc.lro.flags |= Q8_LRO_COMP_TS; in ql_rcv_isr() 645 sgc.lro.flags |= Q8_LRO_COMP_PUSH_BIT; in ql_rcv_isr() [all …]
|
| HD | ql_hw.c | 2792 struct lro_ctrl *lro; in qla_config_soft_lro() local 2795 lro = &hw->sds[i].lro; in qla_config_soft_lro() 2797 bzero(lro, sizeof(struct lro_ctrl)); in qla_config_soft_lro() 2800 if (tcp_lro_init_args(lro, ha->ifp, 0, NUM_RX_DESCRIPTORS)) { in qla_config_soft_lro() 2807 if (tcp_lro_init(lro)) { in qla_config_soft_lro() 2815 lro->ifp = ha->ifp; in qla_config_soft_lro() 2827 struct lro_ctrl *lro; in qla_drain_soft_lro() local 2830 lro = &hw->sds[i].lro; in qla_drain_soft_lro() 2833 tcp_lro_flush_all(lro); in qla_drain_soft_lro() 2837 while ((!SLIST_EMPTY(&lro->lro_active))) { in qla_drain_soft_lro() [all …]
|
| /freebsd-11-stable/sys/ofed/drivers/infiniband/ulp/ipoib/ |
| HD | ipoib_ethtool.c | 136 data[index++] = priv->lro.lro_mgr.stats.aggregated; in ipoib_get_ethtool_stats() 137 data[index++] = priv->lro.lro_mgr.stats.flushed; in ipoib_get_ethtool_stats() 138 if (priv->lro.lro_mgr.stats.flushed) in ipoib_get_ethtool_stats() 139 data[index++] = priv->lro.lro_mgr.stats.aggregated / in ipoib_get_ethtool_stats() 140 priv->lro.lro_mgr.stats.flushed; in ipoib_get_ethtool_stats() 143 data[index++] = priv->lro.lro_mgr.stats.no_desc; in ipoib_get_ethtool_stats()
|
| /freebsd-11-stable/sys/dev/qlxge/ |
| HD | qls_isr.c | 134 struct lro_ctrl *lro; in qls_rx_comp() local 139 lro = &rxr->lro; in qls_rx_comp() 206 if (lro->lro_cnt && (tcp_lro_rx(lro, mp, 0) == 0)) { in qls_rx_comp() 234 struct lro_ctrl *lro; in qls_cq_isr() local 237 lro = &ha->rx_ring[cq_idx].lro; in qls_cq_isr() 289 tcp_lro_flush_all(lro); in qls_cq_isr()
|
| HD | qls_os.c | 1490 struct lro_ctrl *lro; in qls_config_lro() local 1493 lro = &ha->rx_ring[i].lro; in qls_config_lro() 1494 if (tcp_lro_init(lro)) { in qls_config_lro() 1499 lro->ifp = ha->ifp; in qls_config_lro() 1511 struct lro_ctrl *lro; in qls_free_lro() local 1517 lro = &ha->rx_ring[i].lro; in qls_free_lro() 1518 tcp_lro_free(lro); in qls_free_lro()
|
| /freebsd-11-stable/sys/dev/qlxgb/ |
| HD | qla_isr.c | 54 struct lro_ctrl *lro) in qla_rx_intr() argument 140 if (lro->lro_cnt && (tcp_lro_rx(lro, mp, 0) == 0)) { in qla_rx_intr() 269 struct lro_ctrl *lro; in qla_rcv_isr() local 287 lro = &hw->sds[sds_idx].lro; in qla_rcv_isr() 307 qla_rx_intr(ha, (sdesc->data[0]), sds_idx, lro); in qla_rcv_isr() 326 tcp_lro_flush_all(lro); in qla_rcv_isr()
|
| HD | qla_hw.c | 1148 ha->hw.flags.lro = 0; in qla_del_hw_if() 1789 struct lro_ctrl *lro; in qla_config_lro() local 1792 lro = &hw->sds[i].lro; in qla_config_lro() 1793 if (tcp_lro_init(lro)) { in qla_config_lro() 1798 lro->ifp = ha->ifp; in qla_config_lro() 1811 struct lro_ctrl *lro; in qla_free_lro() local 1817 lro = &hw->sds[i].lro; in qla_free_lro() 1818 tcp_lro_free(lro); in qla_free_lro()
|
| HD | qla_hw.h | 719 struct lro_ctrl lro; member 735 lro :1, member
|
| /freebsd-11-stable/sys/dev/nxge/include/ |
| HD | xgehal-device.h | 243 typedef struct lro { struct 948 __hal_tcp_lro_capable(iplro_t *ip, tcplro_t *tcp, lro_t *lro, int *ts_off); 955 __hal_get_lro_session(u8 *eth_hdr, iplro_t *ip, tcplro_t *tcp, lro_t **lro, 960 __hal_lro_under_optimal_thresh(iplro_t *ip, tcplro_t *tcp, lro_t *lro, 964 __hal_collapse_ip_hdr(iplro_t *ip, tcplro_t *tcp, lro_t *lro, 968 __hal_collapse_tcp_hdr(iplro_t *ip, tcplro_t *tcp, lro_t *lro, 972 __hal_append_lro(iplro_t *ip, tcplro_t **tcp, u32 *seg_len, lro_t *lro, 983 lro_t **lro, xge_hal_dtr_info_t *ext_info, 993 __hal_open_lro_session (u8 *buffer, iplro_t *ip, tcplro_t *tcp, lro_t **lro,
|
| /freebsd-11-stable/sys/dev/mlx5/mlx5_en/ |
| HD | mlx5_en_rx.c | 430 tcp_lro_queue_mbuf(&rq->lro, mb); in mlx5e_poll_rx_cq() 434 rq->lro.lro_cnt == 0 || in mlx5e_poll_rx_cq() 435 tcp_lro_rx(&rq->lro, mb, 0) != 0) { in mlx5e_poll_rx_cq() 493 tcp_lro_flush_all(&rq->lro); in mlx5e_rx_cq_comp()
|
| /freebsd-11-stable/sys/dev/ixl/ |
| HD | ixl_txrx.c | 1371 struct lro_ctrl *lro = &rxr->lro; in ixl_init_rx_ring() local 1508 int err = tcp_lro_init(lro); in ixl_init_rx_ring() 1515 lro->ifp = vsi->ifp; in ixl_init_rx_ring() 1584 if (rxr->lro.lro_cnt != 0) in ixl_rx_input() 1585 if (tcp_lro_rx(&rxr->lro, m, 0) == 0) in ixl_rx_input() 1707 struct lro_ctrl *lro = &rxr->lro; in ixl_rxeof() local 1947 tcp_lro_flush_all(lro); in ixl_rxeof() 1950 while ((queued = SLIST_FIRST(&lro->lro_active)) != NULL) { in ixl_rxeof() 1951 SLIST_REMOVE_HEAD(&lro->lro_active, next); in ixl_rxeof() 1952 tcp_lro_flush(lro, queued); in ixl_rxeof()
|
| /freebsd-11-stable/sys/dev/vnic/ |
| HD | nicvf_queues.c | 677 if ((rq->lro.lro_cnt != 0) && in nicvf_rcv_pkt_handler() 678 (tcp_lro_rx(&rq->lro, mbuf, 0) == 0)) in nicvf_rcv_pkt_handler() 743 struct lro_ctrl *lro; in nicvf_cq_intr_handler() local 819 lro = &rq->lro; in nicvf_cq_intr_handler() 820 tcp_lro_flush_all(lro); in nicvf_cq_intr_handler() 1296 struct lro_ctrl *lro; in nicvf_rcv_queue_config() local 1303 lro = &rq->lro; in nicvf_rcv_queue_config() 1311 tcp_lro_free(lro); in nicvf_rcv_queue_config() 1319 if (tcp_lro_init(lro) != 0) { in nicvf_rcv_queue_config() 1324 lro->ifp = nic->ifp; in nicvf_rcv_queue_config()
|
| /freebsd-11-stable/sys/dev/ixgbe/ |
| HD | ix_txrx.c | 1361 struct lro_ctrl *lro = &rxr->lro; local 1456 int err = tcp_lro_init(lro); 1463 lro->ifp = adapter->ifp; 1521 tcp_lro_free(&rxr->lro); 1592 if (rxr->lro.lro_cnt != 0) 1593 if (tcp_lro_rx(&rxr->lro, m, 0) == 0) 1652 struct lro_ctrl *lro = &rxr->lro; local 1903 tcp_lro_flush_all(lro);
|
| /freebsd-11-stable/sys/dev/oce/ |
| HD | oce_if.c | 1786 (rq->lro.lro_cnt != 0)) { in oce_rx() 1788 if (tcp_lro_rx(&rq->lro, m, 0) == 0) { in oce_rx() 1880 struct lro_ctrl *lro = &rq->lro; in oce_rx_flush_lro() local 1886 tcp_lro_flush_all(lro); in oce_rx_flush_lro() 1896 struct lro_ctrl *lro = NULL; in oce_init_lro() local 1900 lro = &sc->rq[i]->lro; in oce_init_lro() 1901 rc = tcp_lro_init(lro); in oce_init_lro() 1906 lro->ifp = sc->ifp; in oce_init_lro() 1916 struct lro_ctrl *lro = NULL; in oce_free_lro() local 1920 lro = &sc->rq[i]->lro; in oce_free_lro() [all …]
|
| /freebsd-11-stable/sys/dev/qlnx/qlnxe/ |
| HD | qlnx_os.c | 4705 struct lro_ctrl *lro; in qlnx_rx_int() local 4707 lro = &rxq->lro; in qlnx_rx_int() 4939 tcp_lro_queue_mbuf(lro, mp); in qlnx_rx_int() 4943 if (tcp_lro_rx(lro, mp, 0)) in qlnx_rx_int() 5063 struct lro_ctrl *lro; in qlnx_fp_isr() local 5065 lro = &fp->rxq->lro; in qlnx_fp_isr() 5072 if (lro->lro_mbuf_count & ~1023) in qlnx_fp_isr() 5074 else if (lro->lro_mbuf_count & ~511) in qlnx_fp_isr() 5076 else if (lro->lro_mbuf_count & ~255) in qlnx_fp_isr() 5078 else if (lro->lro_mbuf_count & ~127) in qlnx_fp_isr() [all …]
|
| /freebsd-11-stable/sys/dev/mlx4/mlx4_en/ |
| HD | mlx4_en_rx.c | 506 if (tcp_lro_init(&ring->lro)) in mlx4_en_activate_rx_rings() 509 ring->lro.ifp = priv->dev; in mlx4_en_activate_rx_rings() 578 tcp_lro_free(&ring->lro); in mlx4_en_deactivate_rx_ring() 827 if (ring->lro.lro_cnt != 0 && in mlx4_en_process_rx_cq() 828 tcp_lro_rx(&ring->lro, mb, 0) == 0) in mlx4_en_process_rx_cq() 853 tcp_lro_flush_all(&ring->lro); in mlx4_en_process_rx_cq()
|
| /freebsd-11-stable/sys/dev/xen/netfront/ |
| HD | netfront.c | 175 struct lro_ctrl lro; member 1154 struct lro_ctrl *lro = &rxq->lro; in xn_rxeof() local 1237 lro->lro_cnt == 0 || tcp_lro_rx(lro, m, 0)) { in xn_rxeof() 1253 tcp_lro_flush_all(lro); in xn_rxeof() 2056 tcp_lro_free(&np->rxq[i].lro); in xn_configure_features() 2061 err = tcp_lro_init(&np->rxq[i].lro); in xn_configure_features() 2068 np->rxq[i].lro.ifp = ifp; in xn_configure_features()
|
| /freebsd-11-stable/sys/dev/liquidio/ |
| HD | lio_main.c | 1187 if (droq->lro.ifp) { in lio_tcp_lro_free() 1188 tcp_lro_free(&droq->lro); in lio_tcp_lro_free() 1189 droq->lro.ifp = NULL; in lio_tcp_lro_free() 1199 struct lro_ctrl *lro; in lio_tcp_lro_init() local 1205 lro = &droq->lro; in lio_tcp_lro_init() 1206 ret = tcp_lro_init(lro); in lio_tcp_lro_init() 1213 lro->ifp = ifp; in lio_tcp_lro_init()
|
| /freebsd-11-stable/sys/dev/cxgbe/ |
| HD | t4_sge.c | 1544 sort_before_lro(struct lro_ctrl *lro) in sort_before_lro() argument 1547 return (lro->lro_mbuf_max != 0); in sort_before_lro() 1567 struct lro_ctrl *lro = &rxq->lro; in service_iq_fl() local 1579 MPASS(sort_before_lro(lro)); in service_iq_fl() 1582 tcp_lro_flush_all(lro); in service_iq_fl() 1671 !sort_before_lro(lro) && in service_iq_fl() 1673 tcp_lro_flush_inactive(lro, &lro_timeout); in service_iq_fl() 1694 if (ndescs > 0 && lro->lro_mbuf_count > 8) { in service_iq_fl() 1695 MPASS(sort_before_lro(lro)); in service_iq_fl() 1700 tcp_lro_flush_all(lro); in service_iq_fl() [all …]
|
| /freebsd-11-stable/sys/dev/vxge/ |
| HD | vxge.c | 1000 struct lro_ctrl *lro = &vpath->lro; in vxge_rx_compl() local 1086 if (vpath->lro_enable && vpath->lro.lro_cnt) in vxge_rx_compl() 1087 tcp_lro_flush_all(lro); in vxge_rx_compl() 1095 if (vpath->lro_enable && vpath->lro.lro_cnt) { in vxge_rx_input() 1096 if (tcp_lro_rx(&vpath->lro, mbuf_up, 0) == 0) in vxge_rx_input() 2262 struct lro_ctrl *lro = NULL; in vxge_vpath_open() local 2269 lro = &vpath->lro; in vxge_vpath_open() 2330 err = tcp_lro_init(lro); in vxge_vpath_open() 2337 lro->ifp = vdev->ifp; in vxge_vpath_open() 2436 tcp_lro_free(&vpath->lro); in vxge_vpath_close() [all …]
|
| /freebsd-11-stable/sys/dev/liquidio/base/ |
| HD | lio_droq.h | 337 struct lro_ctrl lro; member
|