Hello, On Wed Sep 23, 2026 at 10:39 AM CEST, Akash Hadke via lists.openembedded.org wrote: > From: Akash Hadke <[email protected]> > > Backport upstream systemd PR #41000 to v255.22 to fix route handling > in systemd-networkd when routes are configured on links that are not > yet up. > > In 255.21, networkd only checks link readiness when configuring > explicit nexthops. Routes using an implicit nexthop can therefore > be processed while the bound link is still down, which breaks setups > using ConfigureWithoutCarrier= and BindCarrier=. One visible symptom > is that static multicast routes are not installed until much later, > or are missed entirely, even though the address configuration succeeds. > > The upstream fix makes the readiness checks consistent by introducing > a common link_is_up() helper, limiting gateway readiness checks to > nexthops that are actually bound to a link, and moving the > "link must be up" check into the shared gateway readiness path so both > explicit and implicit nexthops follow the same logic. Upstream also > adds a regression test for issue #40106. > > This backport is needed to keep route configuration reliable on > carrier-dependent interfaces in our 255.22-based systemd. > > Ref: https://github.com/systemd/systemd/pull/41000 > https://github.com/systemd/systemd/issues/40106 > > Tested: > - Built core-image-minimal with INIT_MANAGER = "systemd" on qemux86-64. > - Verified functional test case in QEMU: > * Setup dummy parent (carrier off) and VLAN child with BindCarrier=. > * Verified multicast route remains deferred while carrier is down. > * Verified multicast route installs immediately upon carrier up. > * Verified clean route recovery across carrier toggles. > > Signed-off-by: Akash Hadke <[email protected]> > Signed-off-by: Akash Hadke <[email protected]> > --- > ...introduce-link_is_up-helper-function.patch | 166 ++++++++++++++++++ > ...ly-when-the-nexthop-is-bound-to-link.patch | 72 ++++++++ > ...nd-to-a-link-requires-the-link-is-up.patch | 57 ++++++ > ...etwork-add-test-case-for-issue-40106.patch | 117 ++++++++++++ > meta/recipes-core/systemd/systemd_255.22.bb | 4 + > 5 files changed, 416 insertions(+) > create mode 100644 > meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch > create mode 100644 > meta/recipes-core/systemd/systemd/0024-network-check-if-gateway-is-ready-only-when-the-nexthop-is-bound-to-link.patch > create mode 100644 > meta/recipes-core/systemd/systemd/0025-network-route-bound-to-a-link-requires-the-link-is-up.patch > create mode 100644 > meta/recipes-core/systemd/systemd/0026-test-network-add-test-case-for-issue-40106.patch > > diff --git > a/meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch > > b/meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch > new file mode 100644 > index 0000000000..04f7963a8a > --- /dev/null > +++ > b/meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch > @@ -0,0 +1,166 @@ > +From ec4f646759d6625bbafcd4ce67224fb63b99a96c Mon Sep 17 00:00:00 2001 > +From: Yu Watanabe <[email protected]> > +Date: Mon, 9 Mar 2026 10:57:06 +0900 > +Subject: [PATCH] network: introduce link_is_up() helper function > + > +Upstream-Status: Backport > [https://github.com/systemd/systemd/pull/41000/commits/ec4f646759d6625bbafcd4ce67224fb63b99a96c]
Can you check if this patch is needed for wrynose as well? If that is the case, then, you will have to send it for wrynose. > +Comment: Patch is refreshed based on the 255.22 codebase > +Did not pick changes from the below files as it is not matches to our code > base. > +src/network/netdev/bond.c > +src/network/networkd-route.c > + > +Signed-off-by: Akash Hadke <[email protected]> This patch has formating issues (see below): > +--- > + src/network/networkd-link.c | 21 +++++++++++---------- > + src/network/networkd-link.h | 1 + > + src/network/networkd-nexthop.c | 4 ++-- > + src/network/networkd-route.c | 2 +- > + src/network/networkd-setlink.c | 11 +++++------ > + 6 files changed, 21 insertions(+), 20 deletions(-) > + > +diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c > +index e49d5946aa67d..c77b02b8e0192 100644 > +--- a/src/network/networkd-link.c > ++++ b/src/network/networkd-link.c > +@@ -726,7 +726,6 @@ int link_ipv6ll_gained(Link *link) { > + ^ missing a space marking an emtpy context line here Every other issues: Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:26 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:31 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:36 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:45 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:52 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:66 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:78 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:82 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:85 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:92 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:99 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Error: Malformed patch line at meta/recipes-core/systemd/systemd/0023-network-introduce-link_is_up-helper-function.patch:110 Line content: '\n' Context lines must start with exactly one space. This line is missing its prefix. Regards, -- Yoann Congal Smile ECS
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#247017): https://lists.openembedded.org/g/openembedded-core/message/247017 Mute This Topic: https://lists.openembedded.org/mt/121389801/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
