Your message dated Tue, 23 Feb 2021 15:03:32 +0000
with message-id <[email protected]>
and subject line Bug#982943: fixed in bridge-utils 1.6-6
has caused the Debian Bug report #982943,
regarding Code for waiting for the bridge to be ready is broken
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
982943: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=982943
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: bridge-utils
Version: 1.5-10
Severity: important
Tags: patch

Hi!

When we tried to fix bug #779348 what we did was broke the code.

The since version 1.5-10 reads...

    unset BREADY
    unset TRANSITIONED
    COUNT=0

    # Use 0.1 delay if available
    sleep 0.1 2>/dev/null && MAXWAIT=$((MAXWAIT * 10))

    while [ -n "$BREADY" -a $COUNT -lt $MAXWAIT ]
    do
        WAIT AND OTHER STUFF
    done

As BREADY is unset (bridge is not ready) it is empty and thus it won't enter
the while, so it won't wait for the bridge to be ready.

Whis results in a failure to set up the interface if we use IPv6 on it. 
Maybe this is what is happening on #980507:

# time ifup br0

Waiting for br0 to get ready (MAXWAIT is 22 seconds).

Waiting for br0 to get ready (MAXWAIT is 22 seconds).
Waiting for DAD... Timed out
ifup: failed to bring up br0

real    0m8,045s

The time expent waiting was all done at the DAD, the waiting for br0 didn't
take any time as it didn't get to the while loop.

The configuration used for testing this was:

auto br0
iface br0 inet static
        bridge_ports eth0 wlan0
        bridge_stp on
        bridge_fd 10
        bridge_hw wlan0
        address 192.168.X.X
        netmask 255.255.255.0

iface br0 inet6 static
        bridge_ports eth0 wlan0
        address 2001:XXXX:XXXX:XXXX::1
        netmask 64

While, if we invert the logic of the -n of the while loop to a !  like it
was before, like this:

--- /lib/bridge-utils/ifupdown.sh~      2021-01-22 11:06:45.000000000 +0100
+++ /lib/bridge-utils/ifupdown.sh       2021-02-17 03:41:50.114247593 +0100
@@ -203,7 +203,7 @@
     # Use 0.1 delay if available
     sleep 0.1 2>/dev/null && MAXWAIT=$((MAXWAIT * 10))
 
-    while [ -n "$BREADY" -a $COUNT -lt $MAXWAIT ]
+    while [ ! "$BREADY" -a $COUNT -lt $MAXWAIT ]
     do
       sleep 0.1 2>/dev/null || sleep 1
       COUNT=$(($COUNT+1))


We get it to work and the while loop takes what it needs to get the bridge
forwarding:

# time ifup br0

Waiting for br0 to get ready (MAXWAIT is 22 seconds).

Waiting for br0 to get ready (MAXWAIT is 6 seconds).
Waiting for DAD... Done

real    0m16,723s
user    0m0,891s
sys     0m1,261s

If people finds that it takes always MAXWAIT seconds it is because there is
no other bridge speaking STP on the net or our bridge will be the Root of
the topology.  If that is not the case, like in this example, where the
neighbour has a FD of 2, the timing will be shorter and if one wants to make
it shorter he can always play with bridge_fd I don't recommend to lower it
under 2 anyway.

So, the code was ok like it was before and we should try to get this fix in
Bullseye.

I have a better fix for this which also addresses bug #319832, I've posted
it there, it addresses the two "Waiting for br0..." messages, now it is only
shown once, and solves the ifdown errors that you get with current
implementation, but maybe that's too late for Bullseye.

Regards.

-- System Information:
Debian Release: bullseye/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.10.0-3-amd64 (SMP w/2 CPU threads)
Locale: LANG=gl_ES.UTF-8, LC_CTYPE=gl_ES.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages bridge-utils depends on:
ii  libc6  2.31-9

bridge-utils recommends no packages.

Versions of packages bridge-utils suggests:
ii  ifupdown  0.8.36

-- Configuration Files:
/etc/default/bridge-utils changed [not included]

-- no debconf information

--- End Message ---
--- Begin Message ---
Source: bridge-utils
Source-Version: 1.6-6
Done: Santiago Garcia Mantinan <[email protected]>

We believe that the bug you reported is fixed in the latest version of
bridge-utils, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Santiago Garcia Mantinan <[email protected]> (supplier of updated bridge-utils 
package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Tue, 16 Feb 2021 13:29:04 +0100
Source: bridge-utils
Architecture: source
Version: 1.6-6
Distribution: unstable
Urgency: medium
Maintainer: Santiago Garcia Mantinan <[email protected]>
Changed-By: Santiago Garcia Mantinan <[email protected]>
Closes: 292088 319832 765098 980752 980856 981253 982943
Changes:
 bridge-utils (1.6-6) unstable; urgency=medium
 .
   * Fix IPv6 address getting assigned on hotplug devices.
     Closes: #980752.
   * Fix waiting so that DAD works again. Closes: #982943.
   * Move mac setting before brctl addif to ensure mac setting.
     Closes: #980856.
   * Update documentation and add examples. Closes: #765098.
   * Update manpages. Closes: #981253.
   * Add a note on MTU settings. Closes: #292088.
   * Hook also on down to recreate the bridge so that multiple
     stanzas work Ok on ifdown. Closes: #319832.
Checksums-Sha1:
 c2d451f05f823062a58b8cf31b53364600c734b8 1851 bridge-utils_1.6-6.dsc
 7484ef3e8c6f4d660a31782e0aaf0c894b80b867 15868 bridge-utils_1.6-6.debian.tar.xz
 cbb17962422491aeeed46ba4d23dded1b63800ca 5704 
bridge-utils_1.6-6_source.buildinfo
Checksums-Sha256:
 4d4e2843d3c4e469a149e21bfddcaad348d5d386ca1dc4d6b1134794713c890f 1851 
bridge-utils_1.6-6.dsc
 6827078056a879739e463ebc6c8c641b0027e16c4136f10d8b4a85f39f42cec7 15868 
bridge-utils_1.6-6.debian.tar.xz
 a2db08493f9e0f4e4ac24b65fad67eccbdcee3cd6365e08ed83546fb81ec6539 5704 
bridge-utils_1.6-6_source.buildinfo
Files:
 56e478e115ef7675189797b13e0b156c 1851 net optional bridge-utils_1.6-6.dsc
 1f8dfac6073ea656b81a757c9f8c5f4e 15868 net optional 
bridge-utils_1.6-6.debian.tar.xz
 2745820a300691baa736a47da354d3f4 5704 net optional 
bridge-utils_1.6-6_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEBqPldg9hG0uxqQ5ouGiMo9h21aMFAmA1FXQACgkQuGiMo9h2
1aMgyg//eEyX8cFAOdw29XS59PNqCYsXHO43vDbVrP1c0133Dma6/jnUfadTzcHJ
D/ObbK9FQwld4OspFREnfvH2ubqHD4mlhPzrx94gnvA5Gk7GLO8sg8IzoTHyV9/B
t29NVkgMCneIcb2B7kmyq4bSYLR3rfCEVbYTyUVd/ESf82XkbM98iwjYJHQTahpG
Z/HsMnR3647C7nVmvSvDNDhKczn4YncwmYe1GMzuGQ52i+TxRVIiOCZfmIMVWgaS
aGfEbKd7avuUBE99aJ7e80EKlKvI+A/+Huh/fSFZ+sYXmwYK1iNVAMaR7/gWWUDE
FZsbUotnq1tLVq25m6QjylIR5lTLPH6K/jt+yNCm4f7M3dzIUAgBUqaAigwV1Heg
jgozZpJPdf5udzNxuE1CqqcV2xgodonA79TL5/sMDKzQ9cNlyVIZUoa82iKgKUWf
gTKNBQAeeBNpMOxopk86t+B/KLJCnfz9a5ZFAJizdd92/AzrRiJN45OB1Ofiq5jq
hT+8+gUeYvWvyqs+FinPk727kyktJN1fEHtjNJY7ZfV1iRVZVKpGAqnKhE5Hodc2
RUa07sf162t9aMIclv6wYvjOYf/XMiEVjsi29L05BkAChJz9jQ7uEpNMiYtxOoPr
FA1kQDnCb4rD3goJ7EwttjztpyBCYgapYbgN41mKbeJLRybrQTc=
=GHG4
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to