| /kernel/linux/linux-6.6/net/core/ |
| D | tso.c | 5 #include <net/tso.h> 8 void tso_build_hdr(const struct sk_buff *skb, char *hdr, struct tso_t *tso, in tso_build_hdr() argument 11 int hdr_len = skb_transport_offset(skb) + tso->tlen; in tso_build_hdr() 15 if (!tso->ipv6) { in tso_build_hdr() 18 iph->id = htons(tso->ip_id); in tso_build_hdr() 20 tso->ip_id++; in tso_build_hdr() 24 iph->payload_len = htons(size + tso->tlen); in tso_build_hdr() 27 if (tso->tlen != sizeof(struct udphdr)) { in tso_build_hdr() 30 put_unaligned_be32(tso->tcp_seq, &tcph->seq); in tso_build_hdr() 46 void tso_build_data(const struct sk_buff *skb, struct tso_t *tso, int size) in tso_build_data() argument [all …]
|
| /kernel/linux/linux-5.10/net/core/ |
| D | tso.c | 5 #include <net/tso.h> 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 [all …]
|
| /kernel/linux/linux-6.6/tools/testing/selftests/net/ |
| D | veth.sh | 231 chk_tso_flag " - tso flag" $SRC on 232 chk_tso_flag " - peer tso flag" $DST on 235 chk_gro " - aggregation with TSO off" 10 242 chk_tso_flag " - tso flag" $SRC on 243 chk_tso_flag " - peer tso flag" $DST on 246 chk_gro " - aggregation with TSO off" 1 256 chk_tso_flag " - tso flag" $SRC on 257 chk_tso_flag " - peer tso flag" $DST on 261 chk_gro " - aggregation with TSO off" 1 318 chk_tso_flag " - tso flag" $SRC off [all …]
|
| /kernel/linux/linux-5.10/arch/powerpc/kernel/ptrace/ |
| D | ptrace-view.c | 360 BUILD_BUG_ON(TSO(ebbrr) + sizeof(unsigned long) != TSO(ebbhr)); in ebb_get() 361 BUILD_BUG_ON(TSO(ebbhr) + sizeof(unsigned long) != TSO(bescr)); in ebb_get() 379 BUILD_BUG_ON(TSO(ebbrr) + sizeof(unsigned long) != TSO(ebbhr)); in ebb_set() 380 BUILD_BUG_ON(TSO(ebbhr) + sizeof(unsigned long) != TSO(bescr)); in ebb_set() 415 BUILD_BUG_ON(TSO(siar) + sizeof(unsigned long) != TSO(sdar)); in pmu_get() 416 BUILD_BUG_ON(TSO(sdar) + sizeof(unsigned long) != TSO(sier)); in pmu_get() 417 BUILD_BUG_ON(TSO(sier) + sizeof(unsigned long) != TSO(mmcr2)); in pmu_get() 418 BUILD_BUG_ON(TSO(mmcr2) + sizeof(unsigned long) != TSO(mmcr0)); in pmu_get() 433 BUILD_BUG_ON(TSO(siar) + sizeof(unsigned long) != TSO(sdar)); in pmu_set() 434 BUILD_BUG_ON(TSO(sdar) + sizeof(unsigned long) != TSO(sier)); in pmu_set() [all …]
|
| D | ptrace-tm.c | 577 BUILD_BUG_ON(TSO(tm_tfhar) + sizeof(u64) != TSO(tm_texasr)); in tm_spr_get() 578 BUILD_BUG_ON(TSO(tm_texasr) + sizeof(u64) != TSO(tm_tfiar)); in tm_spr_get() 579 BUILD_BUG_ON(TSO(tm_tfiar) + sizeof(u64) != TSO(ckpt_regs)); in tm_spr_get() 622 BUILD_BUG_ON(TSO(tm_tfhar) + sizeof(u64) != TSO(tm_texasr)); in tm_spr_set() 623 BUILD_BUG_ON(TSO(tm_texasr) + sizeof(u64) != TSO(tm_tfiar)); in tm_spr_set() 624 BUILD_BUG_ON(TSO(tm_tfiar) + sizeof(u64) != TSO(ckpt_regs)); in tm_spr_set()
|
| /kernel/linux/linux-6.6/arch/powerpc/kernel/ptrace/ |
| D | ptrace-view.c | 352 BUILD_BUG_ON(TSO(ebbrr) + sizeof(unsigned long) != TSO(ebbhr)); in ebb_get() 353 BUILD_BUG_ON(TSO(ebbhr) + sizeof(unsigned long) != TSO(bescr)); in ebb_get() 371 BUILD_BUG_ON(TSO(ebbrr) + sizeof(unsigned long) != TSO(ebbhr)); in ebb_set() 372 BUILD_BUG_ON(TSO(ebbhr) + sizeof(unsigned long) != TSO(bescr)); in ebb_set() 407 BUILD_BUG_ON(TSO(siar) + sizeof(unsigned long) != TSO(sdar)); in pmu_get() 408 BUILD_BUG_ON(TSO(sdar) + sizeof(unsigned long) != TSO(sier)); in pmu_get() 409 BUILD_BUG_ON(TSO(sier) + sizeof(unsigned long) != TSO(mmcr2)); in pmu_get() 410 BUILD_BUG_ON(TSO(mmcr2) + sizeof(unsigned long) != TSO(mmcr0)); in pmu_get() 425 BUILD_BUG_ON(TSO(siar) + sizeof(unsigned long) != TSO(sdar)); in pmu_set() 426 BUILD_BUG_ON(TSO(sdar) + sizeof(unsigned long) != TSO(sier)); in pmu_set() [all …]
|
| D | ptrace-tm.c | 578 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()
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | netdev_features.h | 41 NETIF_F_GSO_GRE_BIT, /* ... GRE with TSO */ 42 NETIF_F_GSO_GRE_CSUM_BIT, /* ... GRE with csum with TSO */ 43 NETIF_F_GSO_IPXIP4_BIT, /* ... IP4 or IP6 over IP4 with TSO */ 44 NETIF_F_GSO_IPXIP6_BIT, /* ... IP4 or IP6 over IP6 with TSO */ 45 NETIF_F_GSO_UDP_TUNNEL_BIT, /* ... UDP TUNNEL with TSO */ 46 NETIF_F_GSO_UDP_TUNNEL_CSUM_BIT,/* ... UDP TUNNEL with TSO & CSUM */ 51 NETIF_F_GSO_TUNNEL_REMCSUM_BIT, /* ... TUNNEL with TSO & REMCSUM */ 53 NETIF_F_GSO_ESP_BIT, /* ... ESP with TSO */ 135 #define NETIF_F_TSO __NETIF_F(TSO)
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | netdev_features.h | 41 NETIF_F_GSO_GRE_BIT, /* ... GRE with TSO */ 42 NETIF_F_GSO_GRE_CSUM_BIT, /* ... GRE with csum with TSO */ 43 NETIF_F_GSO_IPXIP4_BIT, /* ... IP4 or IP6 over IP4 with TSO */ 44 NETIF_F_GSO_IPXIP6_BIT, /* ... IP4 or IP6 over IP6 with TSO */ 45 NETIF_F_GSO_UDP_TUNNEL_BIT, /* ... UDP TUNNEL with TSO */ 46 NETIF_F_GSO_UDP_TUNNEL_CSUM_BIT,/* ... UDP TUNNEL with TSO & CSUM */ 51 NETIF_F_GSO_TUNNEL_REMCSUM_BIT, /* ... TUNNEL with TSO & REMCSUM */ 53 NETIF_F_GSO_ESP_BIT, /* ... ESP with TSO */ 129 #define NETIF_F_TSO __NETIF_F(TSO)
|
| /kernel/linux/linux-5.10/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);
|
| /kernel/linux/linux-5.10/drivers/net/ethernet/google/gve/ |
| D | gve_desc.h | 36 u8 l3_offset; /* TSO: 2 byte units to start of IPH */ 38 __be16 mss; /* TSO MSS */ 45 #define GVE_TXD_TSO (0x1 << 4) /* TSO with Host Address */ 52 /* GVE Transmit Descriptor Flags for TSO Segs */ 53 #define GVE_TXSF_IPV6 BIT(1) /* IPv6 TSO */
|
| /kernel/linux/linux-6.6/include/net/ |
| 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);
|
| /kernel/linux/linux-5.10/scripts/gcc-plugins/ |
| D | arm_ssp_per_task_plugin.c | 75 int tso = 0; in plugin_init() local 94 if (!strcmp(argv[i].key, "tso")) { in plugin_init() 95 tso = atoi(argv[i].value); in plugin_init() 109 sp_mask = ~((1U << (12 + tso)) - 1); in plugin_init()
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/google/gve/ |
| D | gve_desc.h | 46 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 */
|
| D | gve_desc_dqo.h | 48 /* 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 */
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/sfc/ |
| D | tx_tso.c | 37 * 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()
|
| /kernel/linux/linux-5.10/drivers/net/ethernet/sfc/ |
| D | tx_tso.c | 37 * 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()
|
| /kernel/linux/linux-5.10/drivers/net/ethernet/marvell/octeontx2/nic/ |
| D | otx2_txrx.c | 13 #include <net/tso.h> 522 * sending TSO segment, hence set payload length in otx2_sqe_add_ext() 606 /* In case of TSO, HW needs this to be explicitly set. in otx2_sqe_add_hdr() 712 struct tso_t tso; in otx2_sq_append_tso() local 714 hdr_len = tso_start(skb, &tso); in otx2_sq_append_tso() 717 * It's done here to avoid mapping for every TSO segment's packet. in otx2_sq_append_tso() 739 /* Add TSO segment's pkt header */ in otx2_sq_append_tso() 741 tso_build_hdr(skb, hdr, &tso, seg_len, tcp_data == 0); in otx2_sq_append_tso() 747 /* Add TSO segment's payload data fragments */ in otx2_sq_append_tso() 752 size = min_t(int, tso.size, seg_len); in otx2_sq_append_tso() [all …]
|
| /kernel/linux/linux-5.10/Documentation/networking/ |
| D | segmentation-offloads.rst | 15 * TCP Segmentation Offload - TSO 34 offload. For this reason TSO is normally disabled if the Tx checksum 47 NETIF_F_TSO_MANGLEID set then the IP ID can be ignored when performing TSO 57 fragmentation offload are the same as TSO. However the IPv4 ID for 136 Partial generic segmentation offload is a hybrid between TSO and GSO. What
|
| /kernel/linux/linux-6.6/Documentation/networking/ |
| D | segmentation-offloads.rst | 15 * TCP Segmentation Offload - TSO 34 offload. For this reason TSO is normally disabled if the Tx checksum 47 NETIF_F_TSO_MANGLEID set then the IP ID can be ignored when performing TSO 57 fragmentation offload are the same as TSO. However the IPv4 ID for 136 Partial generic segmentation offload is a hybrid between TSO and GSO. What
|
| /kernel/linux/linux-5.10/Documentation/networking/device_drivers/ethernet/chelsio/ |
| D | cxgb.rst | 77 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::
|
| /kernel/linux/linux-6.6/Documentation/networking/device_drivers/ethernet/chelsio/ |
| D | cxgb.rst | 77 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::
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/marvell/octeontx2/nic/ |
| D | otx2_txrx.c | 10 #include <net/tso.h> 676 * sending TSO segment, hence set payload length in otx2_sqe_add_ext() 782 /* In case of TSO, HW needs this to be explicitly set. in otx2_sqe_add_hdr() 888 struct tso_t tso; in otx2_sq_append_tso() local 890 hdr_len = tso_start(skb, &tso); in otx2_sq_append_tso() 893 * It's done here to avoid mapping for every TSO segment's packet. in otx2_sq_append_tso() 915 /* Add TSO segment's pkt header */ in otx2_sq_append_tso() 917 tso_build_hdr(skb, hdr, &tso, seg_len, tcp_data == 0); in otx2_sq_append_tso() 923 /* Add TSO segment's payload data fragments */ in otx2_sq_append_tso() 928 size = min_t(int, tso.size, seg_len); in otx2_sq_append_tso() [all …]
|
| /kernel/linux/linux-6.6/Documentation/networking/device_drivers/ethernet/neterion/ |
| D | s2io.rst | 22 such as jumbo frames, MSI/MSI-X, checksum offloads, TSO, UFO and so on. 59 and receive, TSO. 160 c. Turn on TSO(using "ethtool -K"):: 162 # ethtool -K <ethX> tso on
|
| /kernel/linux/linux-5.10/Documentation/networking/device_drivers/ethernet/neterion/ |
| D | s2io.rst | 22 such as jumbo frames, MSI/MSI-X, checksum offloads, TSO, UFO and so on. 59 and receive, TSO. 160 c. Turn on TSO(using "ethtool -K"):: 162 # ethtool -K <ethX> tso on
|