From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.openvz.org (unknown [69.168.225.77]) by lore.virtuozzo.com (Postfix) with ESMTPS id 2AE16802A7 for ; Mon, 28 Sep 2026 19:37:30 +0000 (UTC) Received: from mail.openvz.org (localhost [127.0.0.1]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 68SJZBLf014255; Mon, 28 Sep 2026 22:35:12 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 68SJZBLf014255 Authentication-Results: mail.openvz.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="rVuNPh5n" Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 68SJZAVA014247 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Mon, 28 Sep 2026 22:35:10 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 68SJZAVA014247 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-48aef5cfe43so178342f8f.1 for ; Mon, 28 Sep 2026 12:35:10 -0700 (PDT) X-Gm-Message-State: AFq9FYLr2cHqiMT166qEbB9ia4Pyk/EBMY0UMIyhCmYM130tjiYFYZL4 W3nQi2VwLEEKUG0sAzW6cnxRJo3/p9qxRUU/YU3bV2dPGOsZj0N4Ui0w7ypfVr+dNEfFgZvJzNG em30qqg5Lk23nsD16EDSIuKgExJ21JSTb50c0us/voJiF0KHn4TUK/g== X-Gm-Gg: AYBFou1kjICAyRRd+bhDv8XAAXTny7BGW5euE5KORMF51nzLmDF/+P5N6TRdaq1F5b4 ScDAxFi+S6ITTufIKgWhUTT5kbAIMSCn/X1QUeGkCMgU4ypfvN4ac8bX5bWUvWQCp0LRvOwzfMu Jt5h2Eojw+wPQV9N093qy8T/m4joxUWjvARL23QMh++KPAG8zNy4UPuyRb3MOORDg6gkgC66iiO TdpJC3adj2hZeP8Bb+IyjqBU45/914iQ+x22qgDN7z9DNTdw6j8psXLtjeFOg9dnXB7HRqXva7B rmYIglPwGnKXr5eqQUVyamof7E+kLdUgw8WE72796yn4sI9cSIam/F5IYIhBjy9PpUzZGR/vqmc GD7SyPmlCYdSWsRiaR4Nl+GsY X-Received: by 2002:a5d:584a:0:b0:487:89:bf74 with SMTP id ffacd0b85a97d-4887db4b55bmr20515766f8f.51.1790624110098; Mon, 28 Sep 2026 12:35:10 -0700 (PDT) X-Received: by 2002:a5d:584a:0:b0:487:89:bf74 with SMTP id ffacd0b85a97d-4887db4b55bmr20515739f8f.51.1790624109580; Mon, 28 Sep 2026 12:35:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1790624109; cv=none; d=google.com; s=arc-20260327; b=I8diWsWD59O+uzFzutZs3OTwCUOHwCBJDbnr0u1u1PDOScJAVwwVlUpJ150ypUDwA8 ujV9DVyVgViu+Z4BcwA35le8iU/Knx8RYQe0bLxPCKwmtCro8iouIc9qU4o+m4CTWUVO vSCT579B0QDTDH4fnQ9S2z9UUpPysriE9+I8en8QFwvca7DcIZb2eT78sAuWBZITL4Kr 1JWMXoEGkaHN5Z8KLHKfpcAb61QRh8RFJw3+amCav7Q2GadYRSq9Ez83C7uHUvkZ1N46 tSZ8dM5LhrPKA1ZJBNAG33fdN71s4LSeVu1IA6V0RI9NzspE7Ov4oXzf+3nRw3reIBbl KPkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=5R1k1MAey+Ak2ICGMEELvTYdUZ2T/D/9v8AyaKRCtgE=; fh=WpT6aB7RBAGHZeWZzqAr71yzRFbPTYkPWKsRagLn48Q=; b=igiRFs3ThcLEdNsmXXqHhlwHbiM8MjO7mwJe17uHryqkmvcNGAH+KvTgA0a+J4oey1 fehzrBiAKgMtbw8wFd9dFd2+/b1bXVfKvC19FhenERkLmxxVdvGTizgIrO7/sudDK2wQ mFOupc7bJeK4uS4cRP515n0rxuxDAGFDIdkLABUJFwjPopjGJlrymnsWyaGig7llx5oh J1j5Ha+nS4zdD4cJ1kpw//d/KdSt1EbCnU38OfLdWi4D0BI6FFOH3mc2muinczZcI5az Nsbpl5qMrdXZFQw7C+9s9/6NfAfNX0W9LdkdEZf2d82BRH5Sd8plzNezb+b7ky3sL+5Y GJgw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=rVuNPh5n; spf=pass (google.com: domain of eva.kurchatova@virtuozzo.com designates 130.117.225.111 as permitted sender) smtp.mailfrom=eva.kurchatova@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: from relay.virtuozzo.com (relay.virtuozzo.com. [130.117.225.111]) by mx.google.com with ESMTPS id ffacd0b85a97d-4887a880598si22672407f8f.450.2026.09.28.12.35.09 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Sep 2026 12:35:09 -0700 (PDT) Received-SPF: pass (google.com: domain of eva.kurchatova@virtuozzo.com designates 130.117.225.111 as permitted sender) client-ip=130.117.225.111; Authentication-Results: mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=rVuNPh5n; spf=pass (google.com: domain of eva.kurchatova@virtuozzo.com designates 130.117.225.111 as permitted sender) smtp.mailfrom=eva.kurchatova@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=virtuozzo.com; s=relay; h=MIME-Version:Message-ID:Date:Subject:From: Content-Type; bh=5R1k1MAey+Ak2ICGMEELvTYdUZ2T/D/9v8AyaKRCtgE=; b=rVuNPh5nF0Zi a9Il4FALMyOAGCfQquQTe4BxZbpu8USXd8Q9abupVkPviqMA1w8VSFpP8OOYByzDJN+BE96COy2WJ ZG1zSWN8gJ1ktnl6aHnWnvObzJlG9lev0DFWhkOGSo0w4d/bsLKlds0djxpc6uqGn7hdAmbsOpxaa XBh2z/YNlt+To5Jqplbvy9oTmwLf7PQwKC6NQkyULwa2OK2019/4w0eBtp0oFyfijBXsRtUKCoisf gtzAyHM639E1pTZWy84jaLouZnr+sh80hfY/WyWctZcALAPltBIHzESeS8WY2h98NYzkoJXMuKVlK AwDUKYzL17sHdeIf+4d0Ig==; Received: from ch-vpn.virtuozzo.com ([130.117.225.6] helo=LekKit-T14) by relay.virtuozzo.com with esmtp (Exim 4.96) (envelope-from ) id 1xBH4y-009rCJ-0j; Mon, 28 Sep 2026 21:35:00 +0200 From: Eva Kurchatova To: khorenko@virtuozzo.com Date: Mon, 28 Sep 2026 22:33:25 +0300 Message-ID: <20260928193506.549055-2-eva.kurchatova@virtuozzo.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260928193506.549055-1-eva.kurchatova@virtuozzo.com> References: <20260928193506.549055-1-eva.kurchatova@virtuozzo.com> MIME-Version: 1.0 X-OZ-Fwd: true Cc: devel@openvz.org Subject: [Devel] [PATCH hci-8.1 v3 1/1] selftests: net: skip the veth GRO checks where they cannot run X-BeenThere: devel@openvz.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: OpenVZ development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: devel-bounces@openvz.org Errors-To: devel-bounces@openvz.org The three rx-udp-gro-forwarding checks in veth.sh count 10 packets where they expect 1 on a host that has a vxlan or another UDP tunnel, in any namespace, and pass on a host that has none. Any UDP encapsulation socket on the machine moves UDP GRO to the socket lookup path, see commit f2e9de210d50 ("udp: gro behind static key"), and rx-udp-gro-forwarding is then not consulted at all, see commit 36707061d6ba ("udp: allow forwarding of plain (non-fraglisted) UDP GRO packets"). The switch is global, so the test namespaces do not help, and nothing the test can set brings the device flag back. Skip those three checks when UDP encapsulation is in use: a vxlan, geneve or bareudp device, a fou port or an l2tp tunnel in any namespace, or a socket on the vxlan or geneve port. https://virtuozzo.atlassian.net/browse/VSTOR-139651 Feature: fix selftests Signed-off-by: Eva Kurchatova --- tools/testing/selftests/net/veth.sh | 47 +++++++++++++++++++++++++++-- 1 file changed, 44 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/net/veth.sh b/tools/testing/selftests/net/veth.sh index 6bb7dfaa30b6..3fcd63f93be7 100755 --- a/tools/testing/selftests/net/veth.sh +++ b/tools/testing/selftests/net/veth.sh @@ -97,6 +97,42 @@ chk_channels() { fi } +udp_encap_in_use() { + local ns cmd t + + for ns in "" `ip netns list 2>/dev/null | awk '{print $1}'`; do + if [ -n "$ns" ]; then + cmd="ip netns exec $ns" + else + cmd="" + fi + + for t in vxlan geneve bareudp; do + $cmd ip -o link show type $t 2>/dev/null | \ + grep -q . && return 0 + done + $cmd ip fou show 2>/dev/null | grep -q . && return 0 + $cmd ip l2tp show tunnel 2>/dev/null | grep -q . && return 0 + $cmd ss -uapn 2>/dev/null | \ + grep -qE ':(4789|6081)([^0-9]|$)' && return 0 + done + return 1 +} + +# Only meaningful where nothing else has turned udp_encap_needed_key on +chk_gro_fwd() { + local msg="$1" + local expected=$2 + + if [ $UDP_ENCAP -ne 0 ]; then + printf "%-60s" "$msg" + echo " skip - UDP encapsulation in use" + return + fi + + chk_gro "$msg" $expected +} + chk_gro() { local msg="$1" local expected=$2 @@ -223,6 +259,11 @@ fi [ $CPUS -lt 2 ] && echo "Only one CPU available, some tests will be skipped" [ $STRESS -gt 0 -a $CPUS -lt 3 ] && echo " stress test will be skipped, too" +udp_encap_in_use +UDP_ENCAP=$? +[ $UDP_ENCAP -eq 0 ] && \ + echo "UDP encapsulation in use, forwarding tests will be skipped" + create_ns chk_gro_flag "default - gro flag" $SRC off chk_gro_flag " - peer gro flag" $DST off @@ -241,7 +282,7 @@ chk_tso_flag " - tso flag" $SRC on chk_tso_flag " - peer tso flag" $DST on ip netns exec $NS_SRC ethtool -K veth$SRC tx-udp-segmentation off ip netns exec $NS_DST ethtool -K veth$DST rx-udp-gro-forwarding on -chk_gro " - aggregation with TSO off" 1 +chk_gro_fwd " - aggregation with TSO off" 1 cleanup create_ns @@ -285,7 +326,7 @@ chk_tso_flag " - peer tso flag" $DST on ip -n $NS_DST link set dev veth$DST up ip netns exec $NS_SRC ethtool -K veth$SRC tx-udp-segmentation off ip netns exec $NS_DST ethtool -K veth$DST rx-udp-gro-forwarding on -chk_gro " - aggregation with TSO off" 1 +chk_gro_fwd " - aggregation with TSO off" 1 cleanup create_ns @@ -348,7 +389,7 @@ ip netns exec $NS_DST ethtool -K veth$DST rx-udp-gro-forwarding on chk_gro " - no aggregation" 10 ip netns exec $NS_DST ethtool -K veth$DST generic-receive-offload on chk_gro_flag " - gro flag with GRO on" $DST on -chk_gro " - aggregation" 1 +chk_gro_fwd " - aggregation" 1 ip -n $NS_DST link set dev veth$DST down -- 2.55.0 _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel