summaryrefslogtreecommitdiffstats
path: root/test/test-network
diff options
context:
space:
mode:
authorLuca Boccassi <bluca@debian.org>2024-04-15 22:34:39 +0200
committerGitHub <noreply@github.com>2024-04-15 22:34:39 +0200
commita4328b284ef24c0dea0ccee7c138b64082af64bb (patch)
tree6cece5593c1ba7fc72f20c3bd0235a7ed9e3c1f9 /test/test-network
parentunits: order repart after systemd-tpm2-setup-early.service (diff)
parenttest-network: add test for stack overflow in qdisc_drop() and tclass_drop() (diff)
downloadsystemd-a4328b284ef24c0dea0ccee7c138b64082af64bb.tar.xz
systemd-a4328b284ef24c0dea0ccee7c138b64082af64bb.zip
Merge pull request #32258 from yuwata/network-tc-fix-stack-overflow
network/tc: fix stack overflow
Diffstat (limited to 'test/test-network')
-rwxr-xr-xtest/test-network/systemd-networkd-tests.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py
index 21f5b81c4a..cf601c84af 100755
--- a/test/test-network/systemd-networkd-tests.py
+++ b/test/test-network/systemd-networkd-tests.py
@@ -4623,6 +4623,23 @@ class NetworkdTCTests(unittest.TestCase, Utilities):
print(output)
self.assertRegex(output, 'qdisc teql1 31: root')
+ @expectedFailureIfModuleIsNotAvailable('sch_fq', 'sch_sfq', 'sch_tbf')
+ def test_qdisc_drop(self):
+ copy_network_unit('12-dummy.netdev', '12-dummy.network')
+ start_networkd()
+ self.wait_online('dummy98:routable')
+
+ # Test case for issue #32247 and #32254.
+ for _ in range(20):
+ check_output('tc qdisc replace dev dummy98 root fq')
+ self.assertFalse(networkd_is_failed())
+ check_output('tc qdisc replace dev dummy98 root fq pacing')
+ self.assertFalse(networkd_is_failed())
+ check_output('tc qdisc replace dev dummy98 handle 10: root tbf rate 0.5mbit burst 5kb latency 70ms peakrate 1mbit minburst 1540')
+ self.assertFalse(networkd_is_failed())
+ check_output('tc qdisc add dev dummy98 parent 10:1 handle 100: sfq')
+ self.assertFalse(networkd_is_failed())
+
class NetworkdStateFileTests(unittest.TestCase, Utilities):
def setUp(self):