From 8882519583d8dd2b40a3b95de1e350941ab74f5a Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Wed, 11 Jun 2025 17:17:49 +0900 Subject: [PATCH 1/2] test-network: read the current link flags of bond interface Follow-up for 2700d2c7dc024b71396d564a53f32638efed77af. --- test/test-network/systemd-networkd-tests.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py index 1646dc23ed..7c56110ede 100755 --- a/test/test-network/systemd-networkd-tests.py +++ b/test/test-network/systemd-networkd-tests.py @@ -5887,6 +5887,8 @@ class NetworkdBondTests(unittest.TestCase, Utilities): if not self.wait_operstate('bond99', 'no-carrier', setup_timeout=30, fail_assert=False): # Huh? Kernel does not recognize that all slave interfaces are down? # Let's confirm that networkd's operstate is consistent with ip's result. + output = check_output('ip -d link show bond99') + print(output) self.assertNotRegex(output, 'NO-CARRIER') class NetworkdBridgeTests(unittest.TestCase, Utilities): From c6aae2cd8afe6683c91eb8507ebb25ae450b6f32 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Wed, 11 Jun 2025 17:28:28 +0900 Subject: [PATCH 2/2] test-network: add test case for issue #32186 The reporter said that the issue is caused by BindCarrier=, but I cannot reproduce it. Anyway, let's test it. --- test/test-network/conf/25-bond99.network | 1 + test/test-network/systemd-networkd-tests.py | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/test/test-network/conf/25-bond99.network b/test/test-network/conf/25-bond99.network index 09da6a0c35..086a0d0b9b 100644 --- a/test/test-network/conf/25-bond99.network +++ b/test/test-network/conf/25-bond99.network @@ -5,3 +5,4 @@ Name=bond99 [Network] IPv6AcceptRA=no Address=192.168.123.45/24 +BindCarrier=dummy98 test1 diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py index 7c56110ede..8ecae73966 100755 --- a/test/test-network/systemd-networkd-tests.py +++ b/test/test-network/systemd-networkd-tests.py @@ -5862,6 +5862,10 @@ class NetworkdBondTests(unittest.TestCase, Utilities): print(output) self.assertRegex(output, 'MASTER,UP,LOWER_UP') + # test case for issue #32186 + restart_networkd() + self.wait_online('dummy98:enslaved', 'test1:enslaved', 'bond99:routable') + self.wait_operstate('dummy98', 'enslaved') self.wait_operstate('test1', 'enslaved') self.wait_operstate('bond99', 'routable')