{"id":2175134,"url":"http://patchwork.ozlabs.org/api/1.0/covers/2175134/?format=json","project":{"id":15,"url":"http://patchwork.ozlabs.org/api/1.0/projects/15/?format=json","name":"Ubuntu Kernel","link_name":"ubuntu-kernel","list_id":"kernel-team.lists.ubuntu.com","list_email":"kernel-team@lists.ubuntu.com","web_url":null,"scm_url":null,"webscm_url":null},"msgid":"<20251217131129.31527-1-massimiliano.pellizzer@canonical.com>","date":"2025-12-17T13:11:27","name":"[SRU,J,0/2] selftests: net: veth: fix compatibility with older ethtool versions (LP: #2136734)","submitter":{"id":89057,"url":"http://patchwork.ozlabs.org/api/1.0/people/89057/?format=json","name":"Massimiliano Pellizzer","email":"massimiliano.pellizzer@canonical.com"},"series":[],"headers":{"Return-Path":"<kernel-team-bounces@lists.ubuntu.com>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (4096-bit key;\n unprotected) header.d=canonical.com header.i=@canonical.com\n header.a=rsa-sha256 header.s=20251003 header.b=Z8VchjXr;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ubuntu.com\n (client-ip=185.125.189.65; helo=lists.ubuntu.com;\n envelope-from=kernel-team-bounces@lists.ubuntu.com;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists.ubuntu.com (lists.ubuntu.com [185.125.189.65])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4dWZ2z6TLCz1xpw\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 18 Dec 2025 00:12:27 +1100 (AEDT)","from localhost ([127.0.0.1] helo=lists.ubuntu.com)\n\tby lists.ubuntu.com with esmtp (Exim 4.86_2)\n\t(envelope-from <kernel-team-bounces@lists.ubuntu.com>)\n\tid 1vVrK9-0000Ml-T2; Wed, 17 Dec 2025 13:12:13 +0000","from smtp-relay-internal-0.internal ([10.131.114.225]\n helo=smtp-relay-internal-0.canonical.com)\n by lists.ubuntu.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.86_2) (envelope-from <massimiliano.pellizzer@canonical.com>)\n id 1vVrK7-0000MD-BS\n for kernel-team@lists.ubuntu.com; Wed, 17 Dec 2025 13:12:11 +0000","from mail-wm1-f72.google.com (mail-wm1-f72.google.com\n [209.85.128.72])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by smtp-relay-internal-0.canonical.com (Postfix) with ESMTPS id 3722E3F686\n for <kernel-team@lists.ubuntu.com>; Wed, 17 Dec 2025 13:12:11 +0000 (UTC)","by mail-wm1-f72.google.com with SMTP id\n 5b1f17b1804b1-47921784b97so42704825e9.0\n for <kernel-team@lists.ubuntu.com>; Wed, 17 Dec 2025 05:12:11 -0800 (PST)","from framework (net-93-71-66-166.cust.vodafonedsl.it.\n [93.71.66.166])\n by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-47bd992b89csm28486435e9.8.2025.12.17.05.12.09\n for <kernel-team@lists.ubuntu.com>\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Wed, 17 Dec 2025 05:12:09 -0800 (PST)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com;\n s=20251003; t=1765977131;\n bh=zactPcqf7ziuEbyBxtn0MjZKobYTstw6Iq0VVN4KF2g=;\n h=From:To:Subject:Date:Message-ID:MIME-Version;\n b=Z8VchjXrBM5Ohk9fYAIVShMl//0vk2SUVdUuRaA+Q8RzkwmcxG4JolmO8BJl+U4y1\n 9qQtf5H/uygBIUevOnezAeD/qteIZTSM2doeex7pKOpXDRhywXUz0gPcu6ukeGFkdq\n fWe32EkMUZwXb7AwZvaowsCosiQPkLetQ2SaEQDdKRqiR/A0+jrRA6aP468ny3tVV5\n L+rXucyrpfmO28gO5w4/tQ5DE9nIT0WkwtXyUdyqnGIMHZ/KxSaAaOnJQGcEozGlGz\n uim8dEL9DvG/j5l2B1lpUCc53CpR9N2rRHSzPXqCmQgfnVe5TD858EJAf1aVDiJ6IA\n jLMqnXyxukXsaXPFRhcAfccIa261H/TsQJkfR4BZSjS+FcpHq94JMiSi1kxhhkdYgF\n JZ0jRAkRIwuPy2EcnjKjfJkye/0ARaQP3sM/Sly7yHTcYRrCfXIl/B7UJ6ehXYKIzu\n FpTMRCV4m8ev1jHNP7NtqGBY5UAqMzfm4IbG5rEqjNdylPhFRQ7UBaTQqOxJ6EHNV+\n PJxmuxDQPYBpn6zvtvhWWxy/jv/Vql+q6XkRS/WhuR35fbaPhoR1jKk4ZqgZjoXrP/\n dXGFp229E+OOYzE5YLM/Kt5Y7kAb3Wyag7v7FGdJ8W8Cxd7fCz1L30r38XKNLXjoR1\n ooTroOCopypO1LLjsoLn+YAk=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1765977130; x=1766581930;\n h=content-transfer-encoding:mime-version:message-id:date:subject:to\n :from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=zactPcqf7ziuEbyBxtn0MjZKobYTstw6Iq0VVN4KF2g=;\n b=qpAsrrQYI2lReL1bUpjkEWhDU8eXLawim9EwVlOB2yRllriOxfHdCFFqnpGwc+s35h\n xETRDzbx802OUE71SW6s4UdW4Tzi8yGVlsdbdSZKSxOx8x17d4KhE8CSMzAMf5OWzrVg\n bq+dZjyuERRc42G+okE0gPtOzSwcHKySTY649/tGljB10BMqQDHn8lBzQxX4GYs35Bf4\n PyQgkHc8WCiKqSVv7/zBAO+sTDepxAO/vt0S+kskVGCgie2ctWjiYmXeTBCCO6NSt4pL\n hFEG0bjwnwQM5WbZ3frFbaf7j1bLg4rejFPS5numpojuZaaJLbJn3g+fAuQbHLJtVSWo\n Y07g==","X-Gm-Message-State":"AOJu0Ywwc01O0Z3JNT5FzllKHBZrbLDk0OGmaqGf1Y5K/fW5FIEg9V84\n cKFfxhukxK5Mt/RSVr1cuG8FLBep0ejK0TeyiK96cLpdsxXReivvSjFCTlEfwC1jtR84x7gfO2U\n gvFY0IqRl/wa7pldZFvwIK7tl1OnCIDSwofM9+sRGq6lIHkdZHeRla1usCFpcRxf9IpDiZnrtid\n h63+iXOO83p6OgNUwu","X-Gm-Gg":"AY/fxX6wgWhux2jawyuwurHr2oHIYDvCzm0HFHWwBc2jKSJ0EJN1wrtRAdmPtooOYfx\n SPZR2z3GhpIm2/VDo1dssh7u77rISP0moj9U2mzYPeZbc+T22UhqjHQSMUbLqUnKLUS00wIaR2G\n ma8eRfW7dkKK8EumqSufHh+Mr7WBU5+m3iqd1Qq35tV2PRAaJxMJHIgIYMk925OxYyBPGy2fMNK\n WgX2lHBh84P15niGc60nrFGUHBNGsJtH65aOIisJkYY7FVH7+ZsL+aT3Uxd8LvQP9fcxCgaQblg\n vXTYW6ajelvQKO4/LykUgc6N89yYciL04WlMS1Y/8R55bjMo3cKLt34/JF27lxHx/fhc0XohgHh\n nMb6NLnS5T22qQZOFUcJIVmQb1XtBR+KBMOQ6dKmgcZtQHEVejlMbYyXcjE8WvgCCJM4=","X-Received":["by 2002:a05:600c:4f86:b0:46e:4586:57e4 with SMTP id\n 5b1f17b1804b1-47a8f9057fdmr183700925e9.24.1765977130428;\n Wed, 17 Dec 2025 05:12:10 -0800 (PST)","by 2002:a05:600c:4f86:b0:46e:4586:57e4 with SMTP id\n 5b1f17b1804b1-47a8f9057fdmr183700615e9.24.1765977129946;\n Wed, 17 Dec 2025 05:12:09 -0800 (PST)"],"X-Google-Smtp-Source":"\n AGHT+IF9RYtVHnf7+imdnJaeEYBsvMMunNoKyEI6YcgA7rx9DTYCcZjMcDczY2LBSzN1SY4aT2E7SQ==","From":"Massimiliano Pellizzer <massimiliano.pellizzer@canonical.com>","To":"kernel-team@lists.ubuntu.com","Subject":"[SRU][J][PATCH 0/2] selftests: net: veth: fix compatibility with\n older ethtool versions (LP: #2136734)","Date":"Wed, 17 Dec 2025 14:11:27 +0100","Message-ID":"<20251217131129.31527-1-massimiliano.pellizzer@canonical.com>","X-Mailer":"git-send-email 2.51.0","MIME-Version":"1.0","X-BeenThere":"kernel-team@lists.ubuntu.com","X-Mailman-Version":"2.1.20","Precedence":"list","List-Id":"Kernel team discussions <kernel-team.lists.ubuntu.com>","List-Unsubscribe":"<https://lists.ubuntu.com/mailman/options/kernel-team>,\n <mailto:kernel-team-request@lists.ubuntu.com?subject=unsubscribe>","List-Archive":"<https://lists.ubuntu.com/archives/kernel-team>","List-Post":"<mailto:kernel-team@lists.ubuntu.com>","List-Help":"<mailto:kernel-team-request@lists.ubuntu.com?subject=help>","List-Subscribe":"<https://lists.ubuntu.com/mailman/listinfo/kernel-team>,\n <mailto:kernel-team-request@lists.ubuntu.com?subject=subscribe>","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"kernel-team-bounces@lists.ubuntu.com","Sender":"\"kernel-team\" <kernel-team-bounces@lists.ubuntu.com>"},"content":"BugLink: https://bugs.launchpad.net/bugs/2136734\n\n[ Impact ]\n\nThe veth.sh selftest fails on Focal systems running 5.15 hwe kernel\ndue to incompatibilities with older ethtool version shipped in Focal.\n\nTwo specific failures occur:\n1. The test command \"ethtool -K veth$DST generic-receive-offload on\"\n   fails with \"ethtool: bad command line argument(s)\" because ethtool 5.4\n   does not recognize the long form feature name with the -K option.\n2. The chk_channels() function incorrectly reports failures for combined\n   channels because ethtool 5.4 outputs '0' for unsupported channels while\n   the test expects 'n/a'.\n\nThese failures occur even when the underlying kernel functionality being\ntested works correctly, causing false negatives in the test suite.\n\n[ Fix ]\n\nUse the short form 'gro' instead of 'generic-receive-offload' when\nsetting features with ethtool -K. The short form is compatible with\nboth old and new ethtool versions, while the long form only works with\nnewer versions for the -K operation.\n\nModify the chk_channels() function to accept both 'n/a' and '0' as valid\nvalues for unsupported combined channels. This accommodates the\ndifferent output formats between ethtool versions while maintaining the\ncorrect validation logic.\n\nBoth fixes are purely compatibility changes that do not alter the test\nlogic or the kernel functionality being tested.\n\n[ Test Plan ]\n\nTest ubuntu_kselftest_net net:veth.sh on both Jammy 5.15 and Focal 5.15 kernels.\nThe expected output is the following:\n\n# selftests: net: veth.sh\n# default - gro flag ok\n# - peer gro flag ok\n# - tso flag ok\n# - peer tso flag ok\n# - aggregation ok\n# - aggregation with TSO off ok\n# with gro on - gro flag ok\n# - peer gro flag ok\n# - tso flag ok\n# - peer tso flag ok\n# - aggregation with TSO off ok\n# gro vs xdp while down - gro flag on ok\n# - after down ok\n# - after xdp off ok\n# - after up ok\n# - after peer xdp ok\n# default channels ok\n# with gro enabled on link down - gro flag ok\n# - peer gro flag ok\n# - tso flag ok\n# - peer tso flag ok\n# - aggregation with TSO off ok\n# setting tx channels ok\n# setting both rx and tx channels ok\n# bad setting: combined channels ok\n# setting invalid channels nr ok\n# bad setting: XDP with RX nr less than TX ok\n# bad setting: reducing RX nr below peer TX with XDP set ok\n# bad setting: increasing peer TX nr above RX with XDP set ok\n# setting invalid channels nr ok\n# with xdp attached - gro flag ok\n# - peer gro flag ok\n# - tso flag ok\n# - peer tso flag ok\n# - no aggregation ok\n# - gro flag with GRO on ok\n# - aggregation ok\n# - after dev off, flag ok\n# - peer flag ok\n# - after gro on xdp off, gro flag ok\n# - peer gro flag ok\n# - tso flag ok\n# - peer tso flag ok\n# decreasing tx channels with device down ok\n# - aggregation ok\n# increasing tx channels with device down ok\n# aggregation again with default and TSO off ok\nok 7 selftests: net: veth.sh\n\n[ Regression Potential ]\n\nThe patchset only modify the selftest script and do not change any\nkernel code. The changes improve compatibility with different ethtool\nversions by using universally supported feature names and accepting\nmultiple valid output formats. In case of a regression, it would only\naffect test execution, not kernel functionality.\n\n[ Other Info ]\n\nThe bug affects all Focal's 5.15 kernels.\nIn order to fix them all the patchset has been submitted for Jammy.\n\nMassimiliano Pellizzer (2):\n  selftests: net: veth: use short form gro for ethtool -K\n  selftests: net: veth: accept 0 for unsupported combined channels\n\n tools/testing/selftests/net/veth.sh | 8 ++++----\n 1 file changed, 4 insertions(+), 4 deletions(-)"}