Public bug reported:

1) # lsb_release -rd
Description:    Ubuntu Artful Aardvark (development branch)
Release:        17.10

2) # apt-cache policy systemd
systemd:
  Installed: 234-2ubuntu10
  Candidate: 234-2ubuntu10
  Version table:
 *** 234-2ubuntu10 500
        500 http://archive.ubuntu.com/ubuntu artful/main amd64 Packages
        100 /var/lib/dpkg/status
3) /sys/class/net/br0/bridge/foward_delay value should be 100 (equivalent to 1 
second)

4) /sys/class/net/br0/bridge/foward_delay value is 200 (defaults to 2
seconds)

Configured a bridge in Artful with netplan with the following config:
% cat /etc/netplan/50-cloud-init.yaml
network:
    version: 2
    ethernets:
        eth0:
            dhcp4: true
            match:
                macaddress: '52:54:00:12:34:00'
            set-name: eth0
        eth1:
            match:
                macaddress: '52:54:00:12:34:02'
            set-name: eth1
        eth2:
            match:
                macaddress: '52:54:00:12:34:04'
            set-name: eth2
    bridges:
        br0:
            addresses:
            - 192.168.14.2/24
            interfaces:
            - eth1
            - eth2
            parameters:
                ageing-time: 250
                forward-delay: 1
                hello-time: 1
                max-age: 10
                path-cost:
                    eth1: 50
                    eth2: 75
                priority: 22

This generates some runtime network configs:
# cat 10-netplan-br0.netdev 
[NetDev]
Name=br0
Kind=bridge

[Bridge]
AgeingTimeSec=250
Priority=22
ForwardDelaySec=1
HelloTimeSec=1
MaxAgeSec=10
STP=true


Note that the value (ForwardDelaySec=1) matches the config yaml;  however the 
system value from sysfs is not in seconds, but some other factor:

# cat /sys/class/net/br0/bridge/forward_delay 
200

And brctl confirms the value in seconds matches the kernel setting
# brctl showstp br0
br0
 bridge id              0016.ea251c32d10e
 designated root        0016.ea251c32d10e
 root port                 0                    path cost                  0
 max age                  10.00                 bridge max age            10.00
 hello time                1.00                 bridge hello time          1.00
 forward delay             2.00                 bridge forward delay       2.00
 ageing time             250.00
 hello timer               0.22                 tcn timer                  0.00
 topology change timer     0.00                 gc timer                 118.63
 flags  

I *think* networkd has an update unit conversion bug, looking at the upstream
commit for bridge params support:

https://github.com/systemd/systemd/pull/1459

Notice the unit is in Seconds, ForwardDelaySec=288
which results in a 2.88 second setting.

I suspect that our setting of ForwardDelaySec=1 was *too* small
and there is no warning (or it got rounded out in a conversion)

Hrm, I set ForwardDelaySec=150  an I get a sysfs value of 3000, and a
brctl value of 30

ForwardDelaySec=
ForwardDelaySec specifies the number of seconds spent in each of the Listening 
and Learning states before the Forwarding state is entered.

That's the manpage entry for netdev devices in systemd.  Is it really
being doubled?

ProblemType: Bug
DistroRelease: Ubuntu 17.10
Package: systemd 234-2ubuntu10
ProcVersionSignature: Ubuntu 4.13.0-12.13-generic 4.13.3
Uname: Linux 4.13.0-12-generic x86_64
ApportVersion: 2.20.7-0ubuntu1
Architecture: amd64
Date: Tue Oct  3 23:06:01 2017
Lsusb: Error: command ['lsusb'] failed with exit code 1:
MachineType: QEMU Standard PC (i440FX + PIIX, 1996)
ProcEnviron:
 TERM=vt220
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=C.UTF-8
 SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.13.0-12-generic 
root=UUID=05f7684f-c8ff-42d7-aaf4-c49045b1859a ro console=ttyS0
SourcePackage: systemd
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 04/01/2014
dmi.bios.vendor: SeaBIOS
dmi.bios.version: 1.10.2-1ubuntu1
dmi.chassis.type: 1
dmi.chassis.vendor: QEMU
dmi.chassis.version: pc-i440fx-artful
dmi.modalias: 
dmi:bvnSeaBIOS:bvr1.10.2-1ubuntu1:bd04/01/2014:svnQEMU:pnStandardPC(i440FX+PIIX,1996):pvrpc-i440fx-artful:cvnQEMU:ct1:cvrpc-i440fx-artful:
dmi.product.name: Standard PC (i440FX + PIIX, 1996)
dmi.product.version: pc-i440fx-artful
dmi.sys.vendor: QEMU

** Affects: systemd (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug artful curtin uec-images

-- 
You received this bug notification because you are a member of Ubuntu
Desktop Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1721156

Title:
  networkd does not set bridge forward delay value correctly

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1721156/+subscriptions

-- 
desktop-bugs mailing list
desktop-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/desktop-bugs

Reply via email to