Home
last modified time | relevance | path

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

12345678

/linux/tools/testing/selftests/tc-testing/tc-tests/qdiscs/
H A 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/net/core/
H A 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/tools/testing/selftests/drivers/net/hw/
H A 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'],
158 ethtool(f"-K {cfg.ifname} tx-gso-partial off")
161 ethtool(f"-K {cfg.ifname} tx-gso-partial on")
[all …]
/linux/Documentation/networking/
H A 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/tools/testing/selftests/net/
H A 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"
H A 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 …]
H A 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)"
H A 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/net/mpls/
H A 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");
H A DKconfig20 tristate "MPLS: GSO support"
22 This is helper module to allow segmentation of non-MPLS GSO packets
24 become MPLS GSO packets.
/linux/include/uapi/linux/
H A Dvirtio_net.h74 * GSO-over-UDP-tunnel packets
77 * GSO-over-UDP-tunnel
82 * GSO-over-UDP-tunnel packets
85 * GSO-over-UDP-tunnel
97 #define VIRTIO_NET_F_GSO 6 /* Host handles pkts w/ any GSO type */
147 * specify GSO or CSUM features, you can simply ignore the header.
158 #define VIRTIO_NET_HDR_GSO_NONE 0 /* Not a GSO frame */
159 #define VIRTIO_NET_HDR_GSO_TCPV4 1 /* GSO frame, IPv4 TCP (TSO) */
160 #define VIRTIO_NET_HDR_GSO_UDP 3 /* GSO frame, IPv4 UDP (UFO) */
161 #define VIRTIO_NET_HDR_GSO_TCPV6 4 /* GSO frame, IPv6 TCP */
[all …]
/linux/net/sctp/
H A 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 …]
H A 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/drivers/net/
H A Dxen-netfront.c88 /* Minimum number of Rx slots (includes slot for GSO metadata). */
804 struct xen_netif_extra_info *gso; in xennet_start_xmit() local
806 gso = (struct xen_netif_extra_info *) in xennet_start_xmit()
811 gso->u.gso.size = skb_shinfo(skb)->gso_size; in xennet_start_xmit()
812 gso->u.gso.type = (skb_shinfo(skb)->gso_type & SKB_GSO_TCPV6) ? in xennet_start_xmit()
815 gso->u.gso.pad = 0; in xennet_start_xmit()
816 gso->u.gso.features = 0; in xennet_start_xmit()
818 gso->type = XEN_NETIF_EXTRA_TYPE_GSO; in xennet_start_xmit()
819 gso->flags = 0; in xennet_start_xmit()
1136 struct xen_netif_extra_info *gso) in xennet_set_skb_gso() argument
[all …]
/linux/net/ipv4/
H A 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()
H A 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()
H A Dudp_offload.c3 * IPV4 GSO/GRO offload support
6 * UDPv4 GSO support
11 #include <net/gso.h>
277 /* If we are only performing partial GSO the inner header in __skb_udp_tunnel_segment()
503 * when IPv6 extension headers are present. Fall back to software GSO. in __udp_gso_segment()
558 /* GSO partial and frag_list segmentation only requires splitting in __udp_gso_segment()
560 * cases return a GSO skb. So update the mss now. in __udp_gso_segment()
614 * meaning. However, check for bad offloads in the GSO stack expects the in __udp_gso_segment()
710 /* requires non zero csum, for symmetry with GSO */ in udp_gro_receive_segment()
/linux/include/linux/
H A Dvirtio_net.h114 /* gso packets without NEEDS_CSUM do not set transport_offset. in __virtio_net_hdr_to_skb()
189 /* Too small packets are not really GSO ones. */ in __virtio_net_hdr_to_skb()
284 /* The UDP tunnel must carry a GSO packet, but no UFO. */ in virtio_net_hdr_tnl_to_skb()
308 /* Let the basic parsing deal with plain GSO features. */ in virtio_net_hdr_tnl_to_skb()
369 /* DATA_VALID is mutually exclusive with NEEDS_CSUM, and GSO in virtio_net_handle_csum_offload()
404 /* Let the basic parsing deal with plain GSO features. */ in virtio_net_hdr_tnl_from_skb()
H A 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/Documentation/netlink/specs/
H A Dnetdev.yaml488 This counter includes the number of GSO wire packets for which device
492 name: tx-hw-gso-packets
498 name: tx-hw-gso-bytes
499 doc: See `tx-hw-gso-packets`.
502 name: tx-hw-gso-wire-packets
505 `tx-hw-gso-packets`
508 name: tx-hw-gso-wire-bytes
509 doc: See `tx-hw-gso-wire-packets`.
/linux/net/ipv6/
H A Dexthdrs_offload.c3 * IPV6 GSO/GRO offload support
6 * IPV6 Extension Header GSO/GRO support
H A Dudp_offload.c3 * IPV6 GSO/GRO offload support
6 * UDPv6 GSO support
17 #include <net/gso.h>
/linux/drivers/net/xen-netback/
H A Dnetback.c762 struct xen_netif_extra_info *gso) in xenvif_set_skb_gso() argument
764 if (!gso->u.gso.size) { in xenvif_set_skb_gso()
765 netdev_err(vif->dev, "GSO size must not be zero.\n"); in xenvif_set_skb_gso()
770 switch (gso->u.gso.type) { in xenvif_set_skb_gso()
778 netdev_err(vif->dev, "Bad GSO type %d.\n", gso->u.gso.type); in xenvif_set_skb_gso()
783 skb_shinfo(skb)->gso_size = gso->u.gso.size; in xenvif_set_skb_gso()
793 /* A GSO SKB must be CHECKSUM_PARTIAL. However some buggy in checksum_setup()
794 * peers can fail to set NETRXF_csum_blank when sending a GSO in checksum_setup()
1058 struct xen_netif_extra_info *gso; in xenvif_tx_build_gops() local
1059 gso = &extras[XEN_NETIF_EXTRA_TYPE_GSO - 1]; in xenvif_tx_build_gops()
[all …]
/linux/tools/testing/selftests/bpf/
H A 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/drivers/net/ovpn/
H A Dio.c14 #include <net/gso.h>
66 * GSO state from the transport layer is not valid for the tunnel/data in ovpn_netdev_write()
67 * path. Reset all GSO fields to prevent any further GSO processing in ovpn_netdev_write()
338 /* this might be a GSO-segmented skb list: process each skb in ovpn_send()

12345678