Home
last modified time | relevance | path

Searched full:gso (Results 1 – 25 of 196) sorted by relevance

12345678

/linux-6.15/tools/testing/selftests/drivers/net/hw/
Dtso.py75 ksft_ge(qstat_new['tx-hw-gso-packets'] -
76 qstat_old['tx-hw-gso-packets'],
80 ksft_ge(qstat_new['tx-hw-gso-wire-packets'] -
81 qstat_old['tx-hw-gso-wire-packets'],
86 ksft_lt(qstat_new['tx-hw-gso-packets'] -
87 qstat_old['tx-hw-gso-packets'],
90 ksft_lt(qstat_new['tx-hw-gso-wire-packets'] -
91 qstat_old['tx-hw-gso-wire-packets'],
140 # Tunnel which can silently fall back to gso-partial
141 has_gso_partial = tun and 'tx-gso-partial' in cfg.features
[all …]
/linux-6.15/tools/testing/selftests/tc-testing/tc-tests/qdiscs/
Dcake.json17 …dwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overh…
38 … bandwidth 1Kbit diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overh…
59 …autorate-ingress diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overh…
80 …dwidth unlimited diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 200us raw overh…
101 …width unlimited besteffort triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overh…
122 …dwidth unlimited diffserv8 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overh…
143 …dwidth unlimited diffserv4 triple-isolate nonat nowash no-ack-filter split-gso rtt 100ms raw overh…
164 …+ bandwidth unlimited diffserv3 flowblind nonat nowash no-ack-filter split-gso rtt 100ms raw overh…
185 …0-9]+ bandwidth unlimited diffserv3 dsthost nat nowash no-ack-filter split-gso rtt 100ms raw overh…
206 … [0-9]+ bandwidth unlimited diffserv3 hosts nonat wash no-ack-filter split-gso rtt 100ms raw overh…
[all …]
/linux-6.15/net/core/
Dgso.c4 #include <net/gso.h>
84 * only possible when GSO is used for verifying header integrity.
102 /* Only report GSO partial support if it will enable us to in __skb_gso_segment()
134 * skb_gso_transport_seglen - Return length of individual segments of a gso packet
136 * @skb: GSO skb
169 * skb_gso_network_seglen - Return length of individual segments of a gso packet
171 * @skb: GSO skb
187 * skb_gso_mac_seglen - Return length of individual segments of a gso packet
189 * @skb: GSO skb
205 * There are a couple of instances where we have a GSO skb, and we
[all …]
/linux-6.15/Documentation/networking/
Dsegmentation-offloads.rst18 * Generic Segmentation Offload - GSO
21 * SCTP acceleration with GSO - GSO_BY_FRAGS
45 GSO type SKB_GSO_TCP_FIXEDID is specified then we will not increment the IP
112 above. What occurs in GSO is that a given skbuff will have its data broken
117 offload is required in GSO. Otherwise it becomes possible for a frame to
124 Generic receive offload is the complement to GSO. Ideally any frame
126 frames using GSO, and any sequence of frames segmented by GSO should be
130 altered so that it is when a frame assembled via GRO is segmented via GSO.
136 Partial generic segmentation offload is a hybrid between TSO and GSO. What
151 SCTP acceleration with GSO
[all …]
/linux-6.15/tools/testing/selftests/net/
Dudpgso.sh85 echo "ipv4 hw-gso hw-csum"
88 echo "ipv6 hw-gso hw-csum"
91 echo "ipv4 sw-gso hw-csum"
94 echo "ipv6 sw-gso hw-csum"
97 echo "ipv4 sw-gso sw-csum"
100 echo "ipv6 sw-gso sw-csum"
Dudpgso_bench.sh98 echo "udp gso"
101 echo "udp gso zerocopy"
104 echo "udp gso timestamp"
107 echo "udp gso zerocopy audit"
110 echo "udp gso timestamp audit"
113 echo "udp gso zerocopy timestamp audit"
Dudpgso.c67 int gso_len; /* mss after applying gso */
85 /* no GSO: send a single byte */
90 /* no GSO: send a single MSS */
95 /* no GSO: send a single MSS + 1B: fail */
100 /* send a single MSS: will fall back to no GSO */
106 /* datalen <= MSS < gso_len: will fall back to no GSO */
160 /* send a single 1B MSS: will fall back to no GSO */
201 /* no GSO: send a single byte */
206 /* no GSO: send a single MSS */
211 /* no GSO: send a single MSS + 1B: fail */
[all …]
Dpsock_snd.sh84 # gso checks: implies -l, because with gso len must exceed gso_size
86 echo "raw gso min size"
89 echo "raw gso max size"
92 echo "raw gso max size + 1 (expected to fail)"
Dbig_tcp.sh160 echo "CLI GSO | GW GRO | GW GSO | SER GRO" && \
174 echo "SKIP: Could not run test without gso/gro_ipv4_max_size supported in ip-link"
/linux-6.15/net/mpls/
Dmpls_gso.c3 * MPLS GSO Support
7 * Based on: GSO portions of net/ipv4/gre.c
17 #include <net/gso.h>
94 pr_info("MPLS GSO support\n"); in mpls_gso_init()
111 MODULE_DESCRIPTION("MPLS GSO support");
DKconfig20 tristate "MPLS: GSO support"
22 This is helper module to allow segmentation of non-MPLS GSO packets
24 become MPLS GSO packets.
/linux-6.15/net/sctp/
Doutput.c131 /* set packet max_size with gso_max_size if gso is enabled*/ in sctp_packet_config()
437 struct sk_buff *head, int gso, gfp_t gfp) in sctp_packet_pack() argument
447 if (gso) { in sctp_packet_pack()
530 if (gso) in sctp_packet_pack()
536 if (gso) { in sctp_packet_pack()
574 int pkt_count, gso = 0; in sctp_packet_transmit() local
589 if (!sk_can_gso(sk)) { /* check gso */ in sctp_packet_transmit()
590 pr_err_once("Trying to GSO but underlying device doesn't support it."); in sctp_packet_transmit()
593 gso = 1; in sctp_packet_transmit()
598 head = alloc_skb((gso ? packet->overhead : packet->size) + in sctp_packet_transmit()
[all …]
Doffload.c3 * sctp_offload - GRO/GSO Offloading for SCTP
25 #include <net/gso.h>
31 /* csum and csum_start in GSO CB may be needed to do the UDP in sctp_gso_make_checksum()
/linux-6.15/drivers/net/
Dxen-netfront.c88 /* Minimum number of Rx slots (includes slot for GSO metadata). */
805 struct xen_netif_extra_info *gso; in xennet_start_xmit() local
807 gso = (struct xen_netif_extra_info *) in xennet_start_xmit()
812 gso->u.gso.size = skb_shinfo(skb)->gso_size; in xennet_start_xmit()
813 gso->u.gso.type = (skb_shinfo(skb)->gso_type & SKB_GSO_TCPV6) ? in xennet_start_xmit()
816 gso->u.gso.pad = 0; in xennet_start_xmit()
817 gso->u.gso.features = 0; in xennet_start_xmit()
819 gso->type = XEN_NETIF_EXTRA_TYPE_GSO; in xennet_start_xmit()
820 gso->flags = 0; in xennet_start_xmit()
1140 struct xen_netif_extra_info *gso) in xennet_set_skb_gso() argument
[all …]
/linux-6.15/include/uapi/linux/
Dvirtio_net.h75 #define VIRTIO_NET_F_GSO 6 /* Host handles pkts w/ any GSO type */
125 * specify GSO or CSUM features, you can simply ignore the header.
135 #define VIRTIO_NET_HDR_GSO_NONE 0 /* Not a GSO frame */
136 #define VIRTIO_NET_HDR_GSO_TCPV4 1 /* GSO frame, IPv4 TCP (TSO) */
137 #define VIRTIO_NET_HDR_GSO_UDP 3 /* GSO frame, IPv4 UDP (UFO) */
138 #define VIRTIO_NET_HDR_GSO_TCPV6 4 /* GSO frame, IPv6 TCP */
139 #define VIRTIO_NET_HDR_GSO_UDP_L4 5 /* GSO frame, IPv4& IPv6 UDP (USO) */
188 * specify GSO or CSUM features, you can simply ignore the header. */
/linux-6.15/net/ipv4/
Dgre_offload.c3 * IPV4 GSO/GRO offload support
6 * GRE GSO support
14 #include <net/gso.h>
147 * for GRO, this is problematic for GSO hence can not be enabled in gre_gro_receive()
149 * requiring GSO support to break it up correctly. in gre_gro_receive()
Dtcp_offload.c3 * IPV4 GSO/GRO offload support
6 * TCPv4 GSO/GRO support
12 #include <net/gso.h>
187 /* GSO partial and frag_list segmentation only requires splitting in tcp_gso_segment()
189 * cases return a GSO skb. So update the mss now. in tcp_gso_segment()
230 /* Following permits TCP Small Queues to work well with GSO : in tcp_gso_segment()
233 * is freed by GSO engine in tcp_gso_segment()
Dudp_offload.c3 * IPV4 GSO/GRO offload support
6 * UDPv4 GSO support
11 #include <net/gso.h>
121 /* If we are only performing partial GSO the inner header in __skb_udp_tunnel_segment()
346 * when IPv6 extension headers are present. Fall back to software GSO. in __udp_gso_segment()
397 /* GSO partial and frag_list segmentation only requires splitting in __udp_gso_segment()
399 * cases return a GSO skb. So update the mss now. in __udp_gso_segment()
453 * meaning. However, check for bad offloads in the GSO stack expects the in __udp_gso_segment()
549 /* requires non zero csum, for symmetry with GSO */ in udp_gro_receive_segment()
/linux-6.15/net/ipv6/
Dexthdrs_offload.c3 * IPV6 GSO/GRO offload support
6 * IPV6 Extension Header GSO/GRO support
Dudp_offload.c3 * IPV6 GSO/GRO offload support
6 * UDPv6 GSO support
17 #include <net/gso.h>
/linux-6.15/Documentation/netlink/specs/
Dnetdev.yaml474 This counter includes the number of GSO wire packets for which device
478 name: tx-hw-gso-packets
484 name: tx-hw-gso-bytes
485 doc: See `tx-hw-gso-packets`.
488 name: tx-hw-gso-wire-packets
491 `tx-hw-gso-packets`
494 name: tx-hw-gso-wire-bytes
495 doc: See `tx-hw-gso-wire-packets`.
/linux-6.15/drivers/net/xen-netback/
Dnetback.c761 struct xen_netif_extra_info *gso) in xenvif_set_skb_gso() argument
763 if (!gso->u.gso.size) { in xenvif_set_skb_gso()
764 netdev_err(vif->dev, "GSO size must not be zero.\n"); in xenvif_set_skb_gso()
769 switch (gso->u.gso.type) { in xenvif_set_skb_gso()
777 netdev_err(vif->dev, "Bad GSO type %d.\n", gso->u.gso.type); in xenvif_set_skb_gso()
782 skb_shinfo(skb)->gso_size = gso->u.gso.size; in xenvif_set_skb_gso()
792 /* A GSO SKB must be CHECKSUM_PARTIAL. However some buggy in checksum_setup()
793 * peers can fail to set NETRXF_csum_blank when sending a GSO in checksum_setup()
1057 struct xen_netif_extra_info *gso; in xenvif_tx_build_gops() local
1058 gso = &extras[XEN_NETIF_EXTRA_TYPE_GSO - 1]; in xenvif_tx_build_gops()
[all …]
/linux-6.15/include/linux/
Dnetdev_features.h26 NETIF_F_GSO_BIT, /* Enable software GSO. */
54 NETIF_F_GSO_UDP_L4_BIT, /* ... UDP payload GSO (not UFO) */
55 NETIF_F_GSO_FRAGLIST_BIT, /* ... Fraglist GSO */
112 #define NETIF_F_GSO __NETIF_F(GSO)
/linux-6.15/tools/testing/selftests/bpf/
Dtest_tc_tunnel.sh134 echo "ip gre $mac gso"
137 echo "ip6 gre $mac gso"
146 echo "ip udp $mac gso"
149 echo "ip6 udp $mac gso"
/linux-6.15/drivers/net/wireless/intel/iwlwifi/
Diwl-utils.c5 #include <net/gso.h>
7 #include <net/gso.h>

12345678