Skip to content

network: Bridge member VLAN configurations lead to segfault #38515

@knthm

Description

@knthm

systemd version the issue has been seen with

257.8-1-arch

Used distribution

Arch Linux

Linux kernel version used

6.12.41-1-lts SMP PREEMPT_DYNAMIC Fri, 01 Aug 2025 20:42:03 +0000 x86_64 GNU/Linux

CPU architectures issue was seen on

x86_64

Component

systemd-networkd

Expected behaviour you didn't see

Networkd successfully configures a bridge member's VLAN settings without segfaulting.

Unexpected behaviour you saw

Networkd segfaults the moment a [BridgeVLAN] property is defined on a bridge member interface. Note that configuring it on the bridge itself doesn't trigger the bug.

Steps to reproduce the problem

  1. Configure a bridge interface, as per the documentation
[NetDev]
Name=lan-br
Kind=bridge
MACAddress=de:ca:f2:de:ad:01

[Bridge]
VLANFiltering=1
DefaultPVID=1
VLANProtocol=802.1q
  1. Configure a physical interface to join the bridge interface, as per the documentation
[Match]
Name=enp6s0

[Network]
Bridge=lan-br

[BridgeVLAN]
VLAN=2
PVID=1
EgressUntagged=1
  1. Restart systemd-networkd and observe your machine go offline, as the daemon is now stuck in a restart loop due to the segfault:
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: lan-br: Created.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: lan-br: netdev ready
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp6s0: Setting bridge configurations
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp6s0: Setting bridge VLAN configurations (step 1)
Aug 07 17:48:09 my-shitbox systemd-coredump[10196]: [🡕] Process 10188 (systemd-network) of user 979 dumped core.

                                                Stack trace of thread 10188:
                                                #0  0x0000747b985703ab n/a (libc.so.6 + 0x1703ab)
                                                #1  0x000063639cf451d4 n/a (/usr/lib/systemd/systemd-networkd + 0x7d1d4)
                                                #2  0x000063639cf90d39 n/a (/usr/lib/systemd/systemd-networkd + 0xc8d39)
                                                #3  0x000063639cee19a5 n/a (/usr/lib/systemd/systemd-networkd + 0x199a5)
                                                #4  0x0000747b98aac6b9 n/a (libsystemd-shared-257.8-1.so + 0x2ac6b9)
                                                #5  0x0000747b98aacdb3 sd_event_dispatch (libsystemd-shared-257.8-1.so + 0x2acdb3)
                                                #6  0x0000747b98ab0239 sd_event_run (libsystemd-shared-257.8-1.so + 0x2b0239)
                                                #7  0x0000747b98ab0420 sd_event_loop (libsystemd-shared-257.8-1.so + 0x2b0420)
                                                #8  0x000063639cee97c8 n/a (/usr/lib/systemd/systemd-networkd + 0x217c8)
                                                #9  0x000063639cee0564 n/a (/usr/lib/systemd/systemd-networkd + 0x18564)
                                                #10 0x0000747b98427675 n/a (libc.so.6 + 0x27675)
                                                #11 0x0000747b98427729 __libc_start_main (libc.so.6 + 0x27729)
                                                #12 0x000063639cee06d5 n/a (/usr/lib/systemd/systemd-networkd + 0x186d5)
                                                ELF object binary architecture: AMD x86-64
Aug 07 17:48:10 my-shitbox systemd[1]: systemd-networkd.service: Main process exited, code=dumped, status=11/SEGV

Additional program output to the terminal or log subsystem illustrating the issue

Full log output with SYSTEMD_LOG_LEVEL=debug
Aug 07 17:48:10 my-shitbox systemd[1]: Starting Network Configuration...
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Bus bus-api-network: changing state UNSET → OPENING
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: sd-bus: starting bus bus-api-network by connecting to /run/dbus/system_bus_socket...
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Bus bus-api-network: changing state OPENING → AUTHENTICATING
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Registering bus object implementation for path=/org/freedesktop/network1 iface=org.freedesktop.network1.Manager
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Registering bus object implementation for path=/org/freedesktop/network1/link iface=org.freedesktop.network1.Link
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Registering bus object implementation for path=/org/freedesktop/network1/link iface=org.freedesktop.network1.DHCPServer
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Registering bus object implementation for path=/org/freedesktop/network1/link iface=org.freedesktop.network1.DHCPv4Client
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Registering bus object implementation for path=/org/freedesktop/network1/link iface=org.freedesktop.network1.DHCPv6Client
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Registering bus object implementation for path=/org/freedesktop/network1/network iface=org.freedesktop.network1.Network
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Registering bus object implementation for path=/org/freedesktop/LogControl1 iface=org.freedesktop.LogControl1
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: sd-device-monitor(n/a): Failed to stat PID1's netns, ignoring: No such file or directory
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Loading...
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /etc/systemd/network/10-lan-br.netdev: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /etc/systemd/network/10-tap-ha.netdev: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /etc/systemd/network/00-enp7s0.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /etc/systemd/network/10-enp1s0f0.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /etc/systemd/network/10-enp6s0.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /etc/systemd/network/10-lan-br.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /etc/systemd/network/10-tap-ha.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /usr/lib/systemd/network/80-6rd-tunnel.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: No virtualization found in DMI vendor table.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Unable to read /sys/firmware/dmi/entries/0-0/raw, using the virtualization information found in DMI vendor table, ignoring: Permission denied
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: UML virtualization not found in /proc/cpuinfo.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Virtualization XEN not found, /proc/xen does not exist
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: No virtualization found in CPUID
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: This platform does not support /proc/device-tree
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: This platform does not support /proc/sysinfo
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Found VM virtualization none
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /usr/lib/systemd/network/80-container-host0-tun.network: Conditions in the file do not match the system environment, skipping.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /usr/lib/systemd/network/80-container-host0.network: Conditions in the file do not match the system environment, skipping.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /usr/lib/systemd/network/80-container-vb.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /usr/lib/systemd/network/80-container-ve.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /usr/lib/systemd/network/80-container-vz.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /usr/lib/systemd/network/80-namespace-ns.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /usr/lib/systemd/network/80-vm-vt.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: /usr/lib/systemd/network/80-wifi-adhoc.network: Successfully loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Loaded.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: Enumerating...
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lo: Saved new link: ifindex=1, iftype=LOOPBACK(772), kind=n/a
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lo: Saved original MTU 65536 (min: 0, max: 4294967295)
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lo: Saved hardware address: 00:00:00:00:00:00
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lo: Saved IPv6 link-local address generation mode: eui64
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lo: Flags change: +LOOPBACK +UP +LOWER_UP +RUNNING
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lo: Link UP
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lo: Gained carrier
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp6s0: Saved new link: ifindex=3, iftype=ETHER(1), kind=n/a
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp6s0: Saved original MTU 1500 (min: 68, max: 9216)
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp6s0: Saved permanent hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp6s0: Saved hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp6s0: Attached to master interface: 7
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp6s0: Saved IPv6 link-local address generation mode: none
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp6s0: Flags change: +MULTICAST +BROADCAST
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp7s0: Saved new link: ifindex=4, iftype=ETHER(1), kind=n/a
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp7s0: Saved original MTU 1500 (min: 68, max: 9216)
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp7s0: Saved permanent hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp7s0: Saved hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp7s0: Saved IPv6 link-local address generation mode: eui64
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp7s0: Flags change: +MULTICAST +BROADCAST
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f0: Saved new link: ifindex=5, iftype=ETHER(1), kind=n/a
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f0: Saved original MTU 1500 (min: 46, max: 9600)
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f0: Saved permanent hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f0: Saved hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f0: Attached to master interface: 7
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f0: Saved IPv6 link-local address generation mode: none
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f0: Flags change: +MULTICAST +BROADCAST
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f1: Saved new link: ifindex=6, iftype=ETHER(1), kind=n/a
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f1: Saved original MTU 1500 (min: 46, max: 9600)
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f1: Saved permanent hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f1: Saved hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f1: Saved IPv6 link-local address generation mode: eui64
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp1s0f1: Flags change: +MULTICAST +BROADCAST
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lan-br: Gained index 7.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lan-br: Saved new link: ifindex=7, iftype=ETHER(1), kind=bridge
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lan-br: Saved original MTU 1500 (min: 68, max: 65535)
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lan-br: Saved hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lan-br: Failed to manage link by its new hardware address, ignoring: File exists
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lan-br: Saved IPv6 link-local address generation mode: eui64
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lan-br: Flags change: +UP +MULTICAST +BROADCAST
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: lan-br: Link UP
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: tap-ha: Gained index 8.
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: tap-ha: Saved new link: ifindex=8, iftype=ETHER(1), kind=tun
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: tap-ha: Saved original MTU 1500 (min: 68, max: 65521)
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: tap-ha: Saved hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: tap-ha: Saved IPv6 link-local address generation mode: eui64
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: tap-ha: Flags change: +UP +MULTICAST +BROADCAST
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: tap-ha: Link UP
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp2s0f0u7u3c2: Saved new link: ifindex=10, iftype=ETHER(1), kind=n/a
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp2s0f0u7u3c2: Saved original MTU 1500 (min: 0, max: 65535)
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp2s0f0u7u3c2: Saved permanent hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:10 my-shitbox systemd-networkd[10205]: enp2s0f0u7u3c2: Saved hardware address: XX:RE:DA:CT:ED:XX
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: No change in value '0', suppressing write
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: Setting '/proc/sys/net/ipv4/conf/enp1s0f0/promote_secondaries' to '1'
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: No change in value '1', suppressing write
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: Requested to set master interface
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: link_check_ready(): link layer is configuring.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: Requested to set bridge configurations
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: Requested to set bridge VLAN configurations (step 1)
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: Requested to set bridge VLAN configurations (step 2)
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: Requested to activate link
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: link_check_ready(): link layer is configuring.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: link_check_ready(): link layer is configuring.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: link_check_ready(): link layer is configuring.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: link_check_ready(): link layer is configuring.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: link_check_ready(): link layer is configuring.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: link_check_ready(): link layer is configuring.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: link_check_ready(): link layer is configuring.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: link_check_ready(): link layer is configuring.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp1s0f0: link_check_ready(): link layer is configuring.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: lan-br: Created.
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: lan-br: netdev ready
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp6s0: Setting bridge configurations
Aug 07 17:48:09 my-shitbox systemd-networkd[10188]: enp6s0: Setting bridge VLAN configurations (step 1)
Aug 07 17:48:09 my-shitbox systemd-coredump[10196]: [🡕] Process 10188 (systemd-network) of user 979 dumped core.

                                                Stack trace of thread 10188:
                                                #0  0x0000747b985703ab n/a (libc.so.6 + 0x1703ab)
                                                #1  0x000063639cf451d4 n/a (/usr/lib/systemd/systemd-networkd + 0x7d1d4)
                                                #2  0x000063639cf90d39 n/a (/usr/lib/systemd/systemd-networkd + 0xc8d39)
                                                #3  0x000063639cee19a5 n/a (/usr/lib/systemd/systemd-networkd + 0x199a5)
                                                #4  0x0000747b98aac6b9 n/a (libsystemd-shared-257.8-1.so + 0x2ac6b9)
                                                #5  0x0000747b98aacdb3 sd_event_dispatch (libsystemd-shared-257.8-1.so + 0x2acdb3)
                                                #6  0x0000747b98ab0239 sd_event_run (libsystemd-shared-257.8-1.so + 0x2b0239)
                                                #7  0x0000747b98ab0420 sd_event_loop (libsystemd-shared-257.8-1.so + 0x2b0420)
                                                #8  0x000063639cee97c8 n/a (/usr/lib/systemd/systemd-networkd + 0x217c8)
                                                #9  0x000063639cee0564 n/a (/usr/lib/systemd/systemd-networkd + 0x18564)
                                                #10 0x0000747b98427675 n/a (libc.so.6 + 0x27675)
                                                #11 0x0000747b98427729 __libc_start_main (libc.so.6 + 0x27729)
                                                #12 0x000063639cee06d5 n/a (/usr/lib/systemd/systemd-networkd + 0x186d5)
                                                ELF object binary architecture: AMD x86-64
Aug 07 17:48:10 my-shitbox systemd[1]: systemd-networkd.service: Main process exited, code=dumped, status=11/SEGV
Aug 07 17:48:10 my-shitbox systemd[1]: systemd-networkd.service: Failed with result 'core-dump'.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bug 🐛Programming errors, that need preferential fixingnetwork

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions