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 A6F7D80777 for ; Mon, 5 Oct 2026 11:24:56 +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 695BNgb3008043; Mon, 5 Oct 2026 14:23:42 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 695BNgb3008043 Authentication-Results: mail.openvz.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="ZZil0/J9" Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 695BNaIC008030 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Mon, 5 Oct 2026 14:23:36 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 695BNaIC008030 Received: by mail-wr1-f71.google.com with SMTP id ffacd0b85a97d-48c50ed05abso1172660f8f.0 for ; Mon, 05 Oct 2026 04:23:36 -0700 (PDT) X-Gm-Message-State: AFuF++kUxE+oVbf+QYisi1wJh9NXmRh+imVClp/+hDOH+cKrL7ZuRkPE WoXbL6LVxZdQVnmJSY9IX1DVIsF5OePt7EGyZ1E0aVMBBeC7UrCv8hS8GOR0Ui9ZpZCpTyn6+5s i9mQuLofbslZUklruyA77Cp+w+J4SGcatjv52XvyijrYPjPEusBGd/Q== X-Gm-Gg: AYBFou1bzgrY6Ji32QIz8ZrYlt6nSWC2BcsW8yeGQS9vj7TwggWrBeUNZ8YFFG/MXPe D0WEx/gNwCvODVZagZPDbTtAv9k2QjY9x7HCRWhlFhYxI0rrOGqiDPXc5k3PAXXSi2strB52lGz 0o/EKyMu7J8gvG3rzDtAgnr4cIhx2hFNxzyXEEyISVFn+1KM3QF7U1TaQSVwYXkXzueSH2ROqm2 EL3GL4PbUBZJX15KlljZDQyEgFh1DARthVs5B40PcUud8B+rrywadorreVGrBYsLxZW6P7JcfJV 03H3hZiopNQuHkby6+xwLqk0xNmWPmHQufYwUGB1T6x9OA41J2pILupILQHXe3Ab3LPgq7gqU9H 7+ylvRAt6NVXpzALhTlRUznqZJg== X-Received: by 2002:a05:600c:c16d:b0:49d:10d6:fd55 with SMTP id 5b1f17b1804b1-4a1680b532emr103550155e9.1.1791199416400; Mon, 05 Oct 2026 04:23:36 -0700 (PDT) X-Received: by 2002:a05:600c:c16d:b0:49d:10d6:fd55 with SMTP id 5b1f17b1804b1-4a1680b532emr103549575e9.1.1791199415725; Mon, 05 Oct 2026 04:23:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1791199415; cv=none; d=google.com; s=arc-20260327; b=m1IxSKMfJvGCJU9YWVg2OYLSdfmWYITmcGnnlGp3YOq/4FtoPWk7lDFsAjOodhnwn8 7ITJhaJuPUnbxcmipZUX/Io2g6GA3l71NtDhq3RTquZpsZtxFfpqFRwH1MnD1QFW8v7T AWKlcDDLj4k4DT9tXiABvwIbjYCZPI0VdVr+GT4BEbTb6sdQvwlslf1iMq5PYTRjT3X0 vXzm31zCfBKCpJfYExgotQ6V6K+VkPCAU4kHDwTqwHNmUboVsXoCuQqZxSw0zXyJC16t Rr2N1t1wLTHCpEkSj3rd5eM/JJmEsJEqo6Oc1EE4Ryw2UgogM+5bU4JPfAOzkMM/tnXO 5WXQ== 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=05CAoBf5X0RySdUhorCXKm8uXhUI803bdxqN/4rJLwc=; fh=WpT6aB7RBAGHZeWZzqAr71yzRFbPTYkPWKsRagLn48Q=; b=egOBYMXMJTDWHPZfQSLVwLxe0zP9e796bOoip2HkTcV4yz2R0LEY3FRWkKrjyLIV0e k/CGP6lZSzIgN1OovYfQfooXQ0ZUApYpuET9hoooNw2KqSilCZwcUQzL5uohdLNHYK40 Wg3OfYnn+ZvzEBYUhpEm0GCX61wOlmhqe+jmjF1dNWIjaMAeaJ/93uesVb6u3rxPgZTr RqoNcuD6zxlga0FsANbO2QUtoF9nfC96zrSGAfLmk45eMCE3IqKZL+QQ27g1DLo8cDdY FCLB1iM3bsfg26VNo6QqSHXVUEhtw/rRe98bnznOyu/fB1QR3mCJTZLi3FInFAnI8QhN Mr3g==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b="ZZil0/J9"; 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-48b5b4397ecsi17241733f8f.385.2026.10.05.04.23.35 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Oct 2026 04:23:35 -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="ZZil0/J9"; 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=05CAoBf5X0RySdUhorCXKm8uXhUI803bdxqN/4rJLwc=; b=ZZil0/J9Hl/J f8wssUM6kq/Q2JqdKHM6ngEwUf2sObiRxxXzgxTpzjVU/XvknjP2FcV1aEcdhkDnnoXpWkeye+0Kb KbY3U1Xt5wTmpTDmqEUW53dWk08tUPf6+Vv4r9MLuBj5475x/jIod3s8igQmgvpl0aQYSRonTFgsP DziYSY5UJYBzuwIRY3vMF+3JQg7EzQRak0yqGT+i8eXWner+evTdU6njqirWHHCCZSbqo4pv9u6pK Ms0hOCGV46i9eRGgbVWT77YmBupedMIXyohYlaz837AMRG53gUnRGkhFn7S2Z3iQSNnXUZpiYHiy3 T/jQGEcWwyn93wZ7Hkhosg==; 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 1xDgjw-00HJZh-0k; Mon, 05 Oct 2026 13:23:27 +0200 From: Eva Kurchatova To: khorenko@virtuozzo.com Date: Mon, 5 Oct 2026 14:23:11 +0300 Message-ID: <20261005112332.1989594-2-eva.kurchatova@virtuozzo.com> X-Mailer: git-send-email 2.56.0 In-Reply-To: <20261005112332.1989594-1-eva.kurchatova@virtuozzo.com> References: <20261005112332.1989594-1-eva.kurchatova@virtuozzo.com> MIME-Version: 1.0 X-OZ-Fwd: true Cc: devel@openvz.org Subject: [Devel] [PATCH hci-8.1 v4 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..08ed8781bb08 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 -eq 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.56.0 _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel