Lines Matching +full:1 +full:- +full:wire

2 # SPDX-License-Identifier: GPL-2.0
40 listen_cmd = f"socat -{ipver} -t 2 -u TCP-LISTEN:{port},reuseport /dev/null,ignoreeof"
64 # TCP falls back to non-LSO.
75 ksft_ge(qstat_new['tx-hw-gso-packets'] -
76 qstat_old['tx-hw-gso-packets'],
78 comment="Number of LSO super-packets with LSO enabled")
80 ksft_ge(qstat_new['tx-hw-gso-wire-packets'] -
81 qstat_old['tx-hw-gso-wire-packets'],
83 comment="Number of LSO wire-packets with LSO enabled")
86 ksft_lt(qstat_new['tx-hw-gso-packets'] -
87 qstat_old['tx-hw-gso-packets'],
88 15, comment="Number of LSO super-packets with LSO disabled")
90 ksft_lt(qstat_new['tx-hw-gso-wire-packets'] -
91 qstat_old['tx-hw-gso-wire-packets'],
92 500, comment="Number of LSO wire-packets with LSO disabled")
96 local_v4 = NetDrvEpEnv.nsim_v4_pfx + "1"
97 local_v6 = NetDrvEpEnv.nsim_v6_pfx + "1"
106 …ip(f"link add {tun_type}-ksft type {tun_type} {tun_arg} local {local_addr} remote {remote_addr} de…
107 defer(ip, f"link del {tun_type}-ksft")
108 ip(f"link set dev {tun_type}-ksft up")
109 ip(f"addr add {local_v4}/24 dev {tun_type}-ksft")
110 ip(f"addr add {local_v6}/64 dev {tun_type}-ksft")
112 …ip(f"link add {tun_type}-ksft type {tun_type} {tun_arg} local {remote_addr} remote {local_addr} de…
114 defer(ip, f"link del {tun_type}-ksft", host=cfg.remote)
115 ip(f"link set dev {tun_type}-ksft up", host=cfg.remote)
116 ip(f"addr add {remote_v4}/24 dev {tun_type}-ksft", host=cfg.remote)
117 ip(f"addr add {remote_v6}/64 dev {tun_type}-ksft", host=cfg.remote)
139 tun_partial = tun and tun[1]
140 # Tunnel which can silently fall back to gso-partial
141 has_gso_partial = tun and 'tx-gso-partial' in cfg.features
146 if 'tx-tcp-mangleid-segmentation' not in cfg.features:
147 ethtool(f"-K {cfg.ifname} tx-tcp-mangleid-segmentation on")
148 defer(ethtool, f"-K {cfg.ifname} tx-tcp-mangleid-segmentation off")
151 ethtool(f"-K {cfg.ifname} {feature} off")
153 ethtool(f"-K {cfg.ifname} tx-gso-partial off")
157 # For compatible tunnels only - just GSO partial, not specific feature.
159 ethtool(f"-K {cfg.ifname} tx-gso-partial on")
165 ethtool(f"-K {cfg.ifname} {feature} on")
174 def query_nic_features(cfg) -> None:
180 features = cfg.ethnl.features_get({"header": {"dev-index": cfg.ifindex}})
186 if 'tx-gso-partial' in cfg.features:
187 ethtool(f"-K {cfg.ifname} tx-gso-partial off")
190 features = cfg.ethnl.features_get({"header": {"dev-index": cfg.ifindex}})
193 cfg.partial_features = cfg.features - no_partial
194 ethtool(f"-K {cfg.ifname} tx-gso-partial on")
198 if 'tx-hw-gso-packets' in stats[0]:
199 ksft_pr("Detected qstat for LSO super-packets")
201 if 'tx-hw-gso-wire-packets' in stats[0]:
202 ksft_pr("Detected qstat for LSO wire-packets")
206 def main() -> None:
215 ("", "4", "tx-tcp-segmentation", None),
216 ("", "6", "tx-tcp6-segmentation", None),
217 …("vxlan", "", "tx-udp_tnl-segmentation", ("vxlan", True, "id 100 dstport 4789 noudp…
218 …("vxlan_csum", "", "tx-udp_tnl-csum-segmentation", ("vxlan", False, "id 100 dstport 4789 udpcs…
219 ("gre", "4", "tx-gre-segmentation", ("ipgre", False, "")),
220 ("gre", "6", "tx-gre-segmentation", ("ip6gre", False, "")),
227 if info[1] and outer_ipver != info[1]: