Home
last modified time | relevance | path

Searched full:tso (Results 1 – 25 of 182) sorted by relevance

12345678

/linux/include/uapi/linux/
H A Dif_tun.h89 #define TUN_F_TSO4 0x02 /* I can handle TSO for IPv4 packets */
90 #define TUN_F_TSO6 0x04 /* I can handle TSO for IPv6 packets */
91 #define TUN_F_TSO_ECN 0x08 /* I can handle TSO with ECN bits. */
96 /* I can handle TSO/USO for UDP tunneled packets */
100 * I can handle TSO/USO for UDP tunneled packets requiring csum offload for
/linux/drivers/net/ethernet/google/gve/
H A Dgve_desc.h46 u8 l3_offset; /* TSO: 2 byte units to start of IPH */
48 __be16 mss; /* TSO MSS */
55 #define GVE_TXD_TSO (0x1 << 4) /* TSO with Host Address */
63 /* GVE Transmit Descriptor Flags for TSO Segs */
64 #define GVE_TXSF_IPV6 BIT(1) /* IPv6 TSO */
H A Dgve_desc_dqo.h48 /* Maximum number of data descriptors allowed per packet, or per-TSO segment. */
62 u8 tso: 1; member
70 /* TX Native TSO Context DTYPE (0x05)
79 /* Max segment size in TSO excluding headers. */
83 u8 header_len; /* Header length to use for TSO offload */
/linux/drivers/net/ethernet/sfc/
H A Dtx_tso.c37 * struct tso_state - TSO state for an SKB
141 * under which TSO will be attempted hold true. Return the protocol number.
227 * @st: TSO state
280 * @st: TSO state
304 /* Send the original headers with a TSO option descriptor in tso_start_new_packet()
350 * efx_enqueue_skb_tso - segment and transmit a TSO socket buffer
358 * Add socket buffer @skb to @tx_queue, doing TSO or return != 0 if
432 "Out of memory for TSO headers, or DMA mapping error\n"); in efx_enqueue_skb_tso()
434 netif_err(efx, tx_err, efx->net_dev, "TSO failed, rc = %d\n", rc); in efx_enqueue_skb_tso()
/linux/arch/powerpc/kernel/ptrace/
H A Dptrace-tm.c578 BUILD_BUG_ON(TSO(tm_tfhar) + sizeof(u64) != TSO(tm_texasr)); in tm_spr_get()
579 BUILD_BUG_ON(TSO(tm_texasr) + sizeof(u64) != TSO(tm_tfiar)); in tm_spr_get()
580 BUILD_BUG_ON(TSO(tm_tfiar) + sizeof(u64) != TSO(ckpt_regs)); in tm_spr_get()
623 BUILD_BUG_ON(TSO(tm_tfhar) + sizeof(u64) != TSO(tm_texasr)); in tm_spr_set()
624 BUILD_BUG_ON(TSO(tm_texasr) + sizeof(u64) != TSO(tm_tfiar)); in tm_spr_set()
625 BUILD_BUG_ON(TSO(tm_tfiar) + sizeof(u64) != TSO(ckpt_regs)); in tm_spr_set()
/linux/Documentation/networking/device_drivers/ethernet/chelsio/
H A Dcxgb.rst77 TCP Segmentation Offloading (TSO) Support
87 By default, TSO is enabled.
88 To disable TSO::
90 ethtool -K <interface> tso off
92 To enable TSO::
94 ethtool -K <interface> tso on
96 To view the status of TSO::
/linux/drivers/net/ethernet/sun/
H A Dsunvnet_common.h16 #define VNET_MINTSO 2048 /* VIO protocol's minimum TSO len */
17 #define VNET_MAXTSO 65535 /* VIO protocol's maximum TSO len */
66 unsigned tso:1; member
H A Dsunvnet_common.c111 if (vio_version_after_eq(vio, 1, 7) && port->tso) { in sunvnet_send_attr_common()
174 port->tso &= !!(pkt->cflags & VNET_LSO_IPV4_CAPAB); in handle_attr_info()
176 port->tso = false; in handle_attr_info()
177 if (port->tso) { in handle_attr_info()
182 port->tso = false; in handle_attr_info()
384 if (port->tso && port->tsolen > port->rmtu) in vnet_rx_one()
1254 if (port->tso && gso_size < datalen) in vnet_handle_offloads()
1270 if (port->tso && gso_size < datalen) { in vnet_handle_offloads()
1274 /* segment to TSO size */ in vnet_handle_offloads()
1288 if (port->tso && curr->len > dev->mtu) { in vnet_handle_offloads()
[all …]
/linux/drivers/net/ethernet/myricom/myri10ge/
H A Dmyri10ge_mcp.h282 /* Return data = the max. size of the entire headers of a IPv6 TSO packet.
283 * If the header size of a IPv6 TSO packet is larger than the specified
284 * value, then the driver must not use TSO.
285 * This size restriction only applies to IPv6 TSO.
286 * For IPv4 TSO, the maximum size of the headers is fixed, and the NIC
291 /* data0 = TSO mode.
/linux/tools/include/uapi/linux/
H A Dif_tun.h87 #define TUN_F_TSO4 0x02 /* I can handle TSO for IPv4 packets */
88 #define TUN_F_TSO6 0x04 /* I can handle TSO for IPv6 packets */
89 #define TUN_F_TSO_ECN 0x08 /* I can handle TSO with ECN bits. */
/linux/drivers/net/ethernet/marvell/octeontx2/nic/
H A Dotx2_txrx.c10 #include <net/tso.h>
724 * sending TSO segment, hence set payload length in otx2_sqe_add_ext()
830 /* In case of TSO, HW needs this to be explicitly set. in otx2_sqe_add_hdr()
936 struct tso_t tso; in otx2_sq_append_tso() local
938 hdr_len = tso_start(skb, &tso); in otx2_sq_append_tso()
941 * It's done here to avoid mapping for every TSO segment's packet. in otx2_sq_append_tso()
963 /* Add TSO segment's pkt header */ in otx2_sq_append_tso()
965 tso_build_hdr(skb, hdr, &tso, seg_len, tcp_data == 0); in otx2_sq_append_tso()
971 /* Add TSO segment's payload data fragments */ in otx2_sq_append_tso()
976 size = min_t(int, tso.size, seg_len); in otx2_sq_append_tso()
[all …]
/linux/drivers/net/ethernet/cavium/thunder/
H A Dnicvf_queues.c12 #include <net/tso.h>
541 /* Preallocate memory for TSO segment's header */ in nicvf_init_snd_queue()
604 /* Check for dummy descriptor used for HW TSO offload on 88xx */ in nicvf_free_snd_queue()
606 /* Get actual TSO descriptors and unmap them */ in nicvf_free_snd_queue()
1214 /* Inform HW to xmit all TSO segments */ in nicvf_xdp_sq_doorbell()
1257 * segments of this TSO packet.
1315 /* Dummy descriptors to get TSO pkt completion notification */ in nicvf_sq_subdesc_required()
1346 /* post_cqe = 0, to avoid HW posting a CQE for every TSO in nicvf_sq_add_hdr_subdesc()
1383 hdr->tso = 1; in nicvf_sq_add_hdr_subdesc()
1395 /* Tx timestamping not supported along with TSO, so ignore request */ in nicvf_sq_add_hdr_subdesc()
[all …]
/linux/tools/testing/selftests/net/
H A Dgre_gso.sh124 log_test $? 0 "$name - copy file w/ TSO"
126 ethtool -K veth0 tso off
131 ethtool -K veth0 tso on
H A Dudpgro_fwd.sh300 ip netns exec "$NS_SRC" ethtool -K veth"$SRC" tso off
307 # segment the aggregated TSO packet, without csum offload
309 for FEATURE in tso tx-udp-segmentation tx-checksumming; do
H A Dbig_tcp.sh137 ip net exec $CLIENT_NS ethtool -K link0 tso $cli_tso
139 ip net exec $ROUTER_NS ethtool -K link2 tso $gw_tso
H A Dsetup_veth.sh
/linux/drivers/net/ethernet/netronome/nfp/nfd3/
H A Dnfd3.h62 * Will be 1 for all non-TSO packets.
66 * on the head's buffer). Equal to skb->len for non-TSO packets.
/linux/drivers/net/ethernet/netronome/nfp/nfdk/
H A Dnfdk.h60 __le16 lso_meta_res; /* Rsvd bits in TSO metadata */
101 /* TSO (optional) */
/linux/drivers/net/ethernet/intel/ixgbe/
H A Dixgbe_dcb.h142 #define DCB_MAX_TSO_SIZE (32*1024) /* MAX TSO packet size supported in DCB mode */
143 #define MINIMUM_CREDIT_FOR_TSO (DCB_MAX_TSO_SIZE/64 + 1) /* 513 for 32KB TSO packet */
/linux/drivers/net/ethernet/amd/xgbe/
H A Dxgbe-desc.c428 unsigned int offset, tso, vlan, datalen, len; in xgbe_map_tx_skb() local
441 tso = XGMAC_GET_BITS(packet->attributes, TX_PACKET_ATTRIBUTES, in xgbe_map_tx_skb()
447 if ((tso && (packet->mss != ring->tx.cur_mss)) || in xgbe_map_tx_skb()
452 if (tso) { in xgbe_map_tx_skb()
453 /* Map the TSO header */ in xgbe_map_tx_skb()
/linux/drivers/net/ethernet/synopsys/
H A Ddwc-xlgmac-desc.c503 unsigned int tso, vlan; in xlgmac_map_tx_skb() local
515 tso = XLGMAC_GET_REG_BITS(pkt_info->attributes, in xlgmac_map_tx_skb()
523 if ((tso && (pkt_info->mss != ring->tx.cur_mss)) || in xlgmac_map_tx_skb()
528 if (tso) { in xlgmac_map_tx_skb()
529 /* Map the TSO header */ in xlgmac_map_tx_skb()
/linux/Documentation/networking/device_drivers/ethernet/stmicro/
H A Dstmmac.rst90 - TCP / UDP Segmentation Offload (TSO, USO)
273 TSO Support
276 TSO (TCP Segmentation Offload) feature is supported by GMAC > 4.x and XGMAC
285 When TSO is enabled, the TCP stack doesn't care about the maximum frame length
289 This feature can be enabled in device tree through ``snps,tso`` entry.
478 32) Enables TSO feature::
/linux/tools/memory-model/litmus-tests/
H A DLB+unlocklockonceonce+poacquireonce.litmus10 * the viewpoint of another CPU (the kind of reordering allowed by TSO).
/linux/drivers/net/wireless/intel/iwlwifi/pcie/gen1_2/
H A Dtx-gen2.c6 #include <net/tso.h>
175 struct tso_t tso; in iwl_txq_gen2_build_amsdu() local
198 * Pull the ieee80211 header to be able to use TSO core, in iwl_txq_gen2_build_amsdu()
210 tso_start(skb, &tso); in iwl_txq_gen2_build_amsdu()
238 tso_build_hdr(skb, pos_hdr, &tso, data_left, !total_len); in iwl_txq_gen2_build_amsdu()
246 * No need for _with_wa, this is from the TSO page and in iwl_txq_gen2_build_amsdu()
263 tb_len = min_t(unsigned int, tso.size, data_left); in iwl_txq_gen2_build_amsdu()
271 tb_phys, tso.data, in iwl_txq_gen2_build_amsdu()
278 tso_build_data(skb, &tso, tb_len); in iwl_txq_gen2_build_amsdu()
652 /* TB1 is mapped directly, the rest is the TSO page and SG list. */ in iwl_txq_gen2_tfd_unmap()
/linux/drivers/net/wireless/intel/iwlwifi/
H A Diwl-utils.h12 * iwl_tx_tso_segment - Segments a TSO packet into subframes for A-MSDU.

12345678