/Linux-v6.1/net/core/ |
D | tso.c | 16 void tso_build_hdr(const struct sk_buff *skb, char *hdr, struct tso_t *tso, in tso_build_hdr() argument 19 int hdr_len = skb_transport_offset(skb) + tso->tlen; in tso_build_hdr() 23 if (!tso->ipv6) { in tso_build_hdr() 26 iph->id = htons(tso->ip_id); in tso_build_hdr() 28 tso->ip_id++; in tso_build_hdr() 32 iph->payload_len = htons(size + tso->tlen); in tso_build_hdr() 35 if (tso->tlen != sizeof(struct udphdr)) { in tso_build_hdr() 38 put_unaligned_be32(tso->tcp_seq, &tcph->seq); in tso_build_hdr() 54 void tso_build_data(const struct sk_buff *skb, struct tso_t *tso, int size) in tso_build_data() argument 56 tso->tcp_seq += size; /* not worth avoiding this operation for UDP */ in tso_build_data() [all …]
|
D | Makefile | 14 sock_diag.o dev_ioctl.o tso.o sock_reuseport.o \
|
/Linux-v6.1/include/net/ |
D | tso.h | 20 void tso_build_hdr(const struct sk_buff *skb, char *hdr, struct tso_t *tso, 22 void tso_build_data(const struct sk_buff *skb, struct tso_t *tso, int size); 23 int tso_start(struct sk_buff *skb, struct tso_t *tso);
|
/Linux-v6.1/tools/testing/selftests/net/ |
D | gre_gso.sh | 130 ethtool -K veth0 tso off 135 ethtool -K veth0 tso on
|
D | setup_veth.sh | 15 ip netns exec "${ns_name}" ethtool -K "${ns_dev}" gro on tso off
|
/Linux-v6.1/drivers/net/ethernet/amd/xgbe/ |
D | xgbe-desc.c | 532 unsigned int offset, tso, vlan, datalen, len; in xgbe_map_tx_skb() local 545 tso = XGMAC_GET_BITS(packet->attributes, TX_PACKET_ATTRIBUTES, in xgbe_map_tx_skb() 551 if ((tso && (packet->mss != ring->tx.cur_mss)) || in xgbe_map_tx_skb() 556 if (tso) { in xgbe_map_tx_skb()
|
/Linux-v6.1/drivers/net/ethernet/synopsys/ |
D | dwc-xlgmac-desc.c | 507 unsigned int tso, vlan; in xlgmac_map_tx_skb() local 519 tso = XLGMAC_GET_REG_BITS(pkt_info->attributes, in xlgmac_map_tx_skb() 527 if ((tso && (pkt_info->mss != ring->tx.cur_mss)) || in xlgmac_map_tx_skb() 532 if (tso) { in xlgmac_map_tx_skb()
|
D | dwc-xlgmac-common.c | 181 if (pdata->hw_feat.tso) { in xlgmac_init() 435 hw_feat->tso = XLGMAC_GET_REG_BITS(mac_hfr1, in xlgmac_get_all_hw_features() 660 pdata->hw_feat.tso ? "YES" : "NO"); in xlgmac_print_all_hw_features()
|
/Linux-v6.1/drivers/net/ethernet/sun/ |
D | sunvnet_common.c | 110 if (vio_version_after_eq(vio, 1, 7) && port->tso) { in sunvnet_send_attr_common() 173 port->tso &= !!(pkt->cflags & VNET_LSO_IPV4_CAPAB); in handle_attr_info() 175 port->tso = false; in handle_attr_info() 176 if (port->tso) { in handle_attr_info() 181 port->tso = false; in handle_attr_info() 383 if (port->tso && port->tsolen > port->rmtu) in vnet_rx_one() 1253 if (port->tso && gso_size < datalen) in vnet_handle_offloads() 1269 if (port->tso && gso_size < datalen) { in vnet_handle_offloads() 1287 if (port->tso && curr->len > dev->mtu) { in vnet_handle_offloads() 1712 port->tso = (port->vsw == 0); /* no tso in vsw, misbehaves in bridge */ in vnet_port_reset()
|
D | sunvnet_common.h | 66 unsigned tso:1; member
|
/Linux-v6.1/drivers/net/ethernet/freescale/enetc/ |
D | enetc.c | 408 static __wsum enetc_tso_hdr_csum(struct tso_t *tso, struct sk_buff *skb, in enetc_tso_hdr_csum() argument 414 if (tso->tlen != sizeof(struct udphdr)) { in enetc_tso_hdr_csum() 427 if (!tso->ipv6) { in enetc_tso_hdr_csum() 439 static void enetc_tso_complete_csum(struct enetc_bdr *tx_ring, struct tso_t *tso, in enetc_tso_complete_csum() argument 449 if (!tso->ipv6) in enetc_tso_complete_csum() 458 if (tso->tlen != sizeof(struct udphdr)) { in enetc_tso_complete_csum() 474 struct tso_t tso; in enetc_map_tx_tso_buffs() local 480 hdr_len = tso_start(skb, &tso); in enetc_map_tx_tso_buffs() 498 tso_build_hdr(skb, hdr, &tso, data_len, total_len == 0); in enetc_map_tx_tso_buffs() 501 csum = enetc_tso_hdr_csum(&tso, skb, hdr, hdr_len, &pos); in enetc_map_tx_tso_buffs() [all …]
|
/Linux-v6.1/drivers/net/ethernet/marvell/octeontx2/nic/ |
D | otx2_txrx.c | 860 struct tso_t tso; in otx2_sq_append_tso() local 862 hdr_len = tso_start(skb, &tso); in otx2_sq_append_tso() 889 tso_build_hdr(skb, hdr, &tso, seg_len, tcp_data == 0); in otx2_sq_append_tso() 900 size = min_t(int, tso.size, seg_len); in otx2_sq_append_tso() 905 tso.next_frag_idx - 1, in otx2_sq_append_tso() 906 (u64)tso.data, hdr_len, in otx2_sq_append_tso() 911 tso_build_data(skb, &tso, size); in otx2_sq_append_tso()
|
/Linux-v6.1/Documentation/devicetree/bindings/net/ |
D | qcom,ethqos.txt | 51 snps,tso;
|
/Linux-v6.1/drivers/net/wireless/intel/iwlwifi/pcie/ |
D | tx.c | 1304 struct tso_t tso; in iwl_fill_data_tbs_amsdu() local 1347 tso_start(skb, &tso); in iwl_fill_data_tbs_amsdu() 1376 tso_build_hdr(skb, hdr_page->pos, &tso, data_left, !total_len); in iwl_fill_data_tbs_amsdu() 1397 unsigned int size = min_t(unsigned int, tso.size, in iwl_fill_data_tbs_amsdu() 1401 tb_phys = dma_map_single(trans->dev, tso.data, in iwl_fill_data_tbs_amsdu() 1408 trace_iwlwifi_dev_tx_tb(trans->dev, skb, tso.data, in iwl_fill_data_tbs_amsdu() 1412 tso_build_data(skb, &tso, size); in iwl_fill_data_tbs_amsdu()
|
/Linux-v6.1/drivers/net/ethernet/huawei/hinic/ |
D | hinic_hw_qp.c | 564 u32 tso = 0, ufo = 0; in hinic_set_tso_inner_l4() local 567 tso = 1; in hinic_set_tso_inner_l4() 574 task->pkt_info0 |= HINIC_SQ_TASK_INFO0_SET(tso || ufo, TSO_FLAG); in hinic_set_tso_inner_l4() 578 HINIC_SQ_CTRL_SET(tso, QUEUE_INFO_TSO) | in hinic_set_tso_inner_l4()
|
/Linux-v6.1/drivers/net/ethernet/pensando/ionic/ |
D | ionic_stats.c | 131 IONIC_TX_STAT_DESC(tso), 168 stats->tx_tso += txstats->tso; in ionic_add_lif_txq_stats()
|
/Linux-v6.1/drivers/net/ethernet/google/gve/ |
D | gve_desc_dqo.h | 62 u8 tso: 1; member
|
/Linux-v6.1/drivers/net/wireless/intel/iwlwifi/queue/ |
D | tx.c | 341 struct tso_t tso; in iwl_txq_gen2_build_amsdu() local 375 tso_start(skb, &tso); in iwl_txq_gen2_build_amsdu() 403 tso_build_hdr(skb, hdr_page->pos, &tso, data_left, !total_len); in iwl_txq_gen2_build_amsdu() 430 tb_len = min_t(unsigned int, tso.size, data_left); in iwl_txq_gen2_build_amsdu() 431 tb_phys = dma_map_single(trans->dev, tso.data, in iwl_txq_gen2_build_amsdu() 434 tb_phys, tso.data, in iwl_txq_gen2_build_amsdu() 440 tso_build_data(skb, &tso, tb_len); in iwl_txq_gen2_build_amsdu()
|
/Linux-v6.1/drivers/net/ethernet/cavium/thunder/ |
D | nicvf_queues.c | 1384 hdr->tso = 1; in nicvf_sq_add_hdr_subdesc() 1489 struct tso_t tso; in nicvf_sq_append_tso() local 1495 hdr_len = tso_start(skb, &tso); in nicvf_sq_append_tso() 1510 tso_build_hdr(skb, hdr, &tso, data_left, total_len == 0); in nicvf_sq_append_tso() 1522 size = min_t(int, tso.size, data_left); in nicvf_sq_append_tso() 1526 virt_to_phys(tso.data)); in nicvf_sq_append_tso() 1531 tso_build_data(skb, &tso, size); in nicvf_sq_append_tso()
|
D | q_struct.h | 530 u64 tso:1; member 565 u64 tso:1;
|
/Linux-v6.1/drivers/net/ethernet/intel/iavf/ |
D | iavf_txrx.c | 2432 int tso, count; in iavf_xmit_frame_ring() local 2484 tso = iavf_tso(first, &hdr_len, &cd_type_cmd_tso_mss); in iavf_xmit_frame_ring() 2486 if (tso < 0) in iavf_xmit_frame_ring() 2488 else if (tso) in iavf_xmit_frame_ring() 2492 tso = iavf_tx_enable_csum(skb, &tx_flags, &td_cmd, &td_offset, in iavf_xmit_frame_ring() 2494 if (tso < 0) in iavf_xmit_frame_ring()
|
/Linux-v6.1/drivers/net/ethernet/freescale/dpaa2/ |
D | dpaa2-eth.c | 1134 skb = swa->tso.skb; in dpaa2_eth_free_tx_fd() 1140 dma_unmap_single(dev, fd_addr, swa->tso.sgt_size, in dpaa2_eth_free_tx_fd() 1150 for (i = 1; i < swa->tso.num_sg; i++) in dpaa2_eth_free_tx_fd() 1154 if (!swa->tso.is_last_fd) in dpaa2_eth_free_tx_fd() 1225 struct tso_t tso; in dpaa2_eth_build_gso_fd() local 1230 hdr_len = tso_start(skb, &tso); in dpaa2_eth_build_gso_fd() 1256 tso_build_hdr(skb, tso_hdr, &tso, data_left, total_len == 0); in dpaa2_eth_build_gso_fd() 1276 size = min_t(int, tso.size, data_left); in dpaa2_eth_build_gso_fd() 1278 addr = dma_map_single(dev, tso.data, size, DMA_TO_DEVICE); in dpaa2_eth_build_gso_fd() 1292 tso_build_data(skb, &tso, size); in dpaa2_eth_build_gso_fd() [all …]
|
/Linux-v6.1/drivers/net/ethernet/sfc/ |
D | ef100_nic.c | 191 netdev_features_t tso = NETIF_F_TSO | NETIF_F_TSO6 | NETIF_F_GSO_PARTIAL | in efx_ef100_init_datapath_caps() local 195 net_dev->features |= tso; in efx_ef100_init_datapath_caps() 196 net_dev->hw_features |= tso; in efx_ef100_init_datapath_caps() 197 net_dev->hw_enc_features |= tso; in efx_ef100_init_datapath_caps()
|
/Linux-v6.1/drivers/net/ethernet/intel/fm10k/ |
D | fm10k_main.c | 1059 int tso; in fm10k_xmit_frame_ring() local 1086 tso = fm10k_tso(tx_ring, first); in fm10k_xmit_frame_ring() 1087 if (tso < 0) in fm10k_xmit_frame_ring() 1089 else if (!tso) in fm10k_xmit_frame_ring()
|
/Linux-v6.1/drivers/net/ethernet/chelsio/cxgb4vf/ |
D | adapter.h | 262 unsigned long tso; /* # of TSO requests */ member
|