/linux/tools/testing/selftests/net/ |
H A D | udpgro.sh | 39 ip netns exec "${PEER_NS}" ethtool -K veth1 gro on 91 # fool the GRO engine changing the destination address ... 94 # ... so that GRO will match the UDP_GRO enabled socket, but packets 160 run_test "no GRO" "${ipv4_args} -M 10 -s 1400" "-4 -n 10 -l 1400" 164 # when GRO does not take place 165 run_test "no GRO chk cmsg" "${ipv4_args} -M 10 -s 1400" "-4 -n 10 -l 1400 -S -1" 172 run_test "GRO" "${ipv4_args} -M 1 -s 14720 -S 0 " "-4 -n 1 -l 14720" 174 run_test "GRO chk cmsg" "${ipv4_args} -M 1 -s 14720 -S 0 " "-4 -n 1 -l 14720 -S 1472" 176 run_test "GRO with custom segment size" "${ipv4_args} -M 1 -s 14720 -S 500 " "-4 -n 1 -l 14720" 178 …run_test "GRO with custom segment size cmsg" "${ipv4_args} -M 1 -s 14720 -S 500 " "-4 -n 1 -l 1472… [all …]
|
H A D | veth.sh | 227 chk_gro_flag "default - gro flag" $SRC off 228 chk_gro_flag " - peer gro flag" $DST off 237 ip netns exec $NS_DST ethtool -K veth$DST gro on 238 chk_gro_flag "with gro on - gro flag" $DST on 239 chk_gro_flag " - peer gro flag" $SRC off 243 ip netns exec $NS_DST ethtool -K veth$DST rx-udp-gro-forwarding on 250 chk_gro_flag "gro vs xdp while down - gro flag off" $DST off 265 chk_gro_flag "gro v [all...] |
H A D | udpgro_fwd.sh | 129 # not enable GRO 216 run_test "No GRO" $BM_NET$DST 10 0 221 ip netns exec $NS_DST ethtool -K veth$DST rx-gro-list on 222 run_test "GRO frag list" $BM_NET$DST 1 0 225 # UDP GRO fwd skips aggregation when find an udp socket with the GRO option 228 # use NAT to circumvent GRO FWD check 232 ip netns exec $NS_DST ethtool -K veth$DST rx-udp-gro-forwarding on 235 run_test "GRO fwd" $BM_NET$DST_NAT 1 0 $BM_NET$DST 240 ip netns exec $NS_DST ethtool -K veth$DST rx-udp-gro-forwarding on 241 run_bench "UDP GRO fwd perf" $BM_NET$DST [all …]
|
H A D | big_tcp.sh | 138 ip net exec $ROUTER_NS ethtool -K link1 gro $gw_gro 140 ip net exec $SERVER_NS ethtool -K link3 gro $ser_gro 160 echo "CLI GSO | GW GRO | GW GSO | SER GRO" && \
|
H A D | gro.sh | 26 ip netns exec $server_ns ./gro "${ARGS[@]}" "--rx" "--iface" "server" \ 30 ip netns exec $client_ns ./gro "${ARGS[@]}" "--iface" "client" \
|
H A D | udpgro_frglist.sh | 40 ip netns exec "${PEER_NS}" ethtool -K veth1 rx-gro-list on 66 echo "udp gso and gro - over veth touching data"
|
H A D | Makefile | 32 TEST_PROGS += gro.sh 71 TEST_GEN_FILES += gro
|
H A D | .gitignore | 10 gro
|
/linux/Documentation/netlink/specs/ |
H A D | netdev.yaml | 259 name: gro-flush-timeout 262 value will also prevent GRO from flushing recent super-frames at 399 name: rx-hw-gro-packets 402 Counts only packets coalesced with the HW-GRO netdevice feature, 406 name: rx-hw-gro-bytes 407 doc: See `rx-hw-gro-packets`. 410 name: rx-hw-gro-wire-packets 412 Number of packets that were coalesced to bigger packetss with the HW-GRO 416 name: rx-hw-gro-wire-bytes 417 doc: See `rx-hw-gro-wire-packets`. [all …]
|
/linux/tools/testing/selftests/bpf/prog_tests/ |
H A D | xdp_do_redirect.c | 177 /* Enable GRO */ in test_xdp_do_redirect() 178 SYS(out, "ethtool -K veth_src gro on"); in test_xdp_do_redirect() 179 SYS(out, "ethtool -K veth_dst gro on"); in test_xdp_do_redirect() 182 if (!ASSERT_OK(err, "veth_src bpf_xdp_query gro on")) in test_xdp_do_redirect() 189 "veth_src query_opts.feature_flags gro on")) in test_xdp_do_redirect() 193 if (!ASSERT_OK(err, "veth_dst bpf_xdp_query gro on")) in test_xdp_do_redirect() 200 "veth_dst query_opts.feature_flags gro on")) in test_xdp_do_redirect()
|
/linux/Documentation/networking/device_drivers/ethernet/intel/ |
H A D | fm10k.rst | 89 Generic Receive Offload, aka GRO 91 The driver supports the in-kernel software implementation of GRO. GRO has 93 utilization can be significantly reduced when under large Rx load. GRO is an 94 evolution of the previously-used LRO interface. GRO is able to coalesce
|
/linux/Documentation/networking/ |
H A D | netdev-features.rst | 162 * rx-gro-hw 164 This requests that the NIC enables Hardware GRO (generic receive offload). 165 Hardware GRO is basically the exact reverse of TSO, and is generally 166 stricter than Hardware LRO. A packet stream merged by Hardware GRO must 168 Hardware GRO is dependent on RXCSUM since every packet successfully merged
|
H A D | segmentation-offloads.rst | 19 * Generic Receive Offload - GRO 125 assembled by GRO should be segmented to create an identical sequence of 127 able to be reassembled back to the original by GRO. The only exception to 130 altered so that it is when a frame assembled via GRO is segmented via GSO.
|
/linux/net/ipv6/ |
H A D | exthdrs_offload.c | 3 * IPV6 GSO/GRO offload support 6 * IPV6 Extension Header GSO/GRO support
|
H A D | tcpv6_offload.c | 3 * IPV6 GSO/GRO offload support 6 * TCPv6 GSO/GRO support 11 #include <net/gro.h>
|
H A D | ip6_offload.c | 3 * IPV6 GSO/GRO offload support 18 #include <net/gro.h> 23 /* All GRO functions are always builtin, except UDP over ipv6, which lays in 311 /* Common GRO receive for SIT and IP6IP6 */ in sit_ip6ip6_gro_receive() 326 /* Common GRO receive for SIT and IP6IP6 */ in ip4ip6_gro_receive()
|
H A D | ip6_offload.h | 3 * IPV6 GSO/GRO offload support
|
/linux/include/net/ |
H A D | gro.h | 50 /* portion of the cb set to zero at every gro iteration */ 59 /* Used in tunnel GRO receive */ 62 /* GRO checksum is valid */ 83 /* GRO is done by frag_list pointer chaining. */ 213 /* GRO checksum functions. These are logical equivalents of the normal 214 * checksum functions (in skbuff.h) except that they operate on the GRO 257 * during GRO. This saves work if we fallback to normal path. in skb_gro_incr_csum_unnecessary()
|
/linux/net/ipv4/ |
H A D | gre_offload.c | 3 * IPV4 GSO/GRO offload support 13 #include <net/gro.h> 147 * for GRO, this is problematic for GSO hence can not be enabled in gre_gro_receive() 148 * here because a GRO pkt may end up in the forwarding path, thus in gre_gro_receive()
|
H A D | udp_offload.c | 3 * IPV4 GSO/GRO offload support 10 #include <net/gro.h> 521 * Under small packet flood GRO count could elsewhere grow a lot in udp_gro_receive_segment() 524 * otherwise complete the GRO packet. in udp_gro_receive_segment() 576 * wasn't detected above, do not GRO. in udp_gro_receive() 588 /* no GRO, be sure flush the current packet */ in udp_gro_receive() 598 /* mark that this skb passed once through the tunnel gro layer */ in udp_gro_receive()
|
H A D | tcp_offload.c | 3 * IPV4 GSO/GRO offload support 6 * TCPv4 GSO/GRO support 11 #include <net/gro.h> 338 /* If skb is a GRO packet, make sure its gso_size matches prior packet mss. in tcp_gro_receive()
|
/linux/Documentation/networking/device_drivers/ethernet/microsoft/ |
H A D | netvsc.rst | 51 Generic Receive Offload, aka GRO 53 The driver supports GRO and it is enabled by default. GRO coalesces
|
/linux/Documentation/networking/device_drivers/ethernet/mellanox/mlx5/ |
H A D | counters.rst | 191 - Number of received packets processed using hardware-accelerated GRO. The 192 number of hardware GRO offloaded packets received on ring i. Only true GRO 193 packets are counted: only packets that are in an SKB with a GRO count > 1. 197 - Number of received bytes processed using hardware-accelerated GRO. The 198 number of hardware GRO offloaded bytes received on ring i. Only true GRO 199 packets are counted: only packets that are in an SKB with a GRO count > 1. 203 - The number of GRO SKBs constructed from hardware-accelerated GRO. Only SKBs 204 with a GRO count > 1 are counted. 208 - Number of receive packets using hardware-accelerated GRO that have large
|
/linux/tools/testing/selftests/bpf/ |
H A D | test_xdp_features.sh | 26 ethtool -K v1 gro on 28 ip netns exec ${NS} ethtool -K v0 gro on
|
/linux/include/linux/ |
H A D | netdev_features.h | 83 NETIF_F_GRO_FRAGLIST_BIT, /* Fraglist GRO */ 86 NETIF_F_GRO_UDP_FWD_BIT, /* Allow UDP GRO for forwarding */ 110 #define NETIF_F_GRO __NETIF_F(GRO)
|