/linux-master/net/core/ |
H A D | tso.c | 5 #include <net/tso.h> 8 void tso_build_hdr(const struct sk_buff *skb, char *hdr, struct tso_t *tso, argument 11 int hdr_len = skb_transport_offset(skb) + tso->tlen; 15 if (!tso->ipv6) { 18 iph->id = htons(tso->ip_id); 20 tso->ip_id++; 24 iph->payload_len = htons(size + tso->tlen); 27 if (tso->tlen != sizeof(struct udphdr)) { 30 put_unaligned_be32(tso->tcp_seq, &tcph->seq); 46 void tso_build_data(const struct sk_buff *skb, struct tso_t *tso, in argument 64 tso_start(struct sk_buff *skb, struct tso_t *tso) argument [all...] |
H A D | Makefile | 14 sock_diag.o dev_ioctl.o tso.o sock_reuseport.o \
|
/linux-master/include/net/ |
H A D | tso.h | 26 void tso_build_hdr(const struct sk_buff *skb, char *hdr, struct tso_t *tso, 28 void tso_build_data(const struct sk_buff *skb, struct tso_t *tso, int size); 29 int tso_start(struct sk_buff *skb, struct tso_t *tso);
|
/linux-master/tools/testing/selftests/net/ |
H A D | setup_veth.sh | 18 ip netns exec "${ns_name}" ethtool -K "${ns_dev}" gro on tso off
|
H A D | gre_gso.sh | 126 ethtool -K veth0 tso off 131 ethtool -K veth0 tso on
|
H A D | big_tcp.sh | 137 ip net exec $CLIENT_NS ethtool -K link0 tso $cli_tso 139 ip net exec $ROUTER_NS ethtool -K link2 tso $gw_tso
|
/linux-master/drivers/net/ethernet/sun/ |
H A D | sunvnet_common.h | 66 unsigned tso:1; member in struct:vnet_port
|
H A D | sunvnet_common.c | 111 if (vio_version_after_eq(vio, 1, 7) && port->tso) { 174 port->tso &= !!(pkt->cflags & VNET_LSO_IPV4_CAPAB); 176 port->tso = false; 177 if (port->tso) { 182 port->tso = false; 384 if (port->tso && port->tsolen > port->rmtu) 1254 if (port->tso && gso_size < datalen) 1270 if (port->tso && gso_size < datalen) { 1288 if (port->tso && curr->len > dev->mtu) { 1713 port->tso [all...] |
/linux-master/drivers/net/ethernet/amd/xgbe/ |
H A D | xgbe-desc.c | 532 unsigned int offset, tso, vlan, datalen, len; local 545 tso = XGMAC_GET_BITS(packet->attributes, TX_PACKET_ATTRIBUTES, 551 if ((tso && (packet->mss != ring->tx.cur_mss)) || 556 if (tso) {
|
/linux-master/drivers/net/ethernet/synopsys/ |
H A D | dwc-xlgmac-desc.c | 507 unsigned int tso, vlan; local 519 tso = XLGMAC_GET_REG_BITS(pkt_info->attributes, 527 if ((tso && (pkt_info->mss != ring->tx.cur_mss)) || 532 if (tso) {
|
H A D | dwc-xlgmac-common.c | 181 if (pdata->hw_feat.tso) { 435 hw_feat->tso = XLGMAC_GET_REG_BITS(mac_hfr1, 660 pdata->hw_feat.tso ? "YES" : "NO");
|
/linux-master/drivers/net/ethernet/google/gve/ |
H A D | gve_desc_dqo.h | 62 u8 tso: 1; member in struct:gve_tx_context_cmd_dtype
|
/linux-master/drivers/net/ethernet/intel/idpf/ |
H A D | idpf_singleq_txrx.c | 361 int csum, tso; local 381 tso = idpf_tso(skb, &offload); 382 if (tso < 0) 389 if (tso || offload.cd_tunneling) 396 if (tso) {
|
H A D | idpf_lan_txrx.h | 291 } tso; member in struct:idpf_flex_tx_ctx_desc
|
/linux-master/drivers/net/ethernet/cavium/thunder/ |
H A D | nicvf_queues.c | 12 #include <net/tso.h> 1384 hdr->tso = 1; 1489 struct tso_t tso; local 1495 hdr_len = tso_start(skb, &tso); 1510 tso_build_hdr(skb, hdr, &tso, data_left, total_len == 0); 1522 size = min_t(int, tso.size, data_left); 1526 virt_to_phys(tso.data)); 1531 tso_build_data(skb, &tso, size);
|
H A D | q_struct.h | 530 u64 tso:1; member in struct:sq_hdr_subdesc 565 u64 tso:1;
|
/linux-master/drivers/net/ethernet/marvell/octeontx2/nic/ |
H A D | otx2_txrx.c | 10 #include <net/tso.h> 888 struct tso_t tso; local 890 hdr_len = tso_start(skb, &tso); 917 tso_build_hdr(skb, hdr, &tso, seg_len, tcp_data == 0); 928 size = min_t(int, tso.size, seg_len); 933 tso.next_frag_idx - 1, 934 (u64)tso.data, hdr_len, 939 tso_build_data(skb, &tso, size); 1173 /* Insert vlan tag before giving pkt to tso */
|
/linux-master/drivers/net/ethernet/pensando/ionic/ |
H A D | ionic_stats.c | 137 IONIC_TX_STAT_DESC(tso), 180 stats->tx_tso += txstats->tso;
|
/linux-master/drivers/net/wireless/intel/iwlwifi/pcie/ |
H A D | tx.c | 12 #include <net/tso.h> 1322 struct tso_t tso; local 1365 tso_start(skb, &tso); 1394 tso_build_hdr(skb, hdr_page->pos, &tso, data_left, !total_len); 1415 unsigned int size = min_t(unsigned int, tso.size, 1419 tb_phys = dma_map_single(trans->dev, tso.data, 1426 trace_iwlwifi_dev_tx_tb(trans->dev, skb, tso.data, 1430 tso_build_data(skb, &tso, size);
|
H A D | tx-gen2.c | 6 #include <net/tso.h>
|
/linux-master/drivers/net/wireless/intel/iwlwifi/queue/ |
H A D | tx.c | 5 #include <net/tso.h> 351 struct tso_t tso; local 385 tso_start(skb, &tso); 413 tso_build_hdr(skb, hdr_page->pos, &tso, data_left, !total_len); 440 tb_len = min_t(unsigned int, tso.size, data_left); 441 tb_phys = dma_map_single(trans->dev, tso.data, 444 tb_phys, tso.data, 450 tso_build_data(skb, &tso, tb_len);
|
/linux-master/drivers/net/ethernet/chelsio/cxgb4vf/ |
H A D | adapter.h | 262 unsigned long tso; /* # of TSO requests */ member in struct:sge_eth_txq
|
/linux-master/drivers/net/ethernet/huawei/hinic/ |
H A D | hinic_hw_qp.c | 564 u32 tso = 0, ufo = 0; local 567 tso = 1; 574 task->pkt_info0 |= HINIC_SQ_TASK_INFO0_SET(tso || ufo, TSO_FLAG); 578 HINIC_SQ_CTRL_SET(tso, QUEUE_INFO_TSO) |
|
/linux-master/drivers/net/ethernet/freescale/enetc/ |
H A D | enetc.c | 12 #include <net/tso.h> 427 static __wsum enetc_tso_hdr_csum(struct tso_t *tso, struct sk_buff *skb, argument 433 if (tso->tlen != sizeof(struct udphdr)) { 446 if (!tso->ipv6) { 458 static void enetc_tso_complete_csum(struct enetc_bdr *tx_ring, struct tso_t *tso, argument 468 if (!tso->ipv6) 477 if (tso->tlen != sizeof(struct udphdr)) { 493 struct tso_t tso; local 499 hdr_len = tso_start(skb, &tso); 517 tso_build_hdr(skb, hdr, &tso, data_le [all...] |
/linux-master/drivers/net/ethernet/intel/iavf/ |
H A D | iavf_txrx.c | 1847 * iavf_tso - set up the tso context descriptor 1852 * Returns 0 if no TSO can happen, 1 if tso is going, or error 2427 int tso, count; local 2478 tso = iavf_tso(first, &hdr_len, &cd_type_cmd_tso_mss); 2480 if (tso < 0) 2482 else if (tso) 2486 tso = iavf_tx_enable_csum(skb, &tx_flags, &td_cmd, &td_offset, 2488 if (tso < 0)
|