Package: release.debian.org Severity: normal Tags: bullseye User: [email protected] Usertags: pu X-Debbugs-Cc: [email protected],[email protected]
Dear SRM, On the "known RC bugs" of the release notes two ifenslave bugs were mentioned which people are interested to see fixed in bullseye. Guillem Jover did fix those two (#990428, #968368) with an unstable upload in october 2021. In the same upload a couple of other bugfixes were done which seem sensible to include, so instead of cherry-picking the two changes I would like to propose a rebase to 2.13 for bullseye as well: +ifenslave (2.13~deb11u1) bullseye; urgency=medium + + * Rebuild for bullseye + * Revert "Bump Standards-Version to 4.6.0 (no changed needed)" Reverthing here the Standards-Version bump (although this was no change needed, but I assume you prefer to not have those changes). + -- Salvatore Bonaccorso <[email protected]> Sat, 25 Jun 2022 09:45:37 +0200 + +ifenslave (2.13) unstable; urgency=medium + + * QA upload. + + [ Guillem Jover ] + * Fix MAC address setting messed up by udev for bond interfaces. + (Closes: #949062) Not sure if you want this excluded. It installs a .link unit which explicitly sets the MACAddressPolicy to none. + * Use ifquery instead of example contrib script ifstate. (Closes: #991930) + * Fix ifquery redirections. + * Bump Standards-Version to 4.6.0 (no changed needed). Dropped above, but + * Remove long supported Linux version requirements from Description. kept as it does not make sense to retain the "This package supports 2.6.x kernels and the recent 3.x.x kernels." formulation in the description. + + [ Sami Haahtinen ] + * Use correct argument in setup_slave_device(). (Closes: #968368) + + [ Oleander Reis ] + * Handle slave definitions of interfaces with no bond settings. + (Closes: #990428) Those two are the respective RC bugs fixed with the upload. + * Delete bond interfaces on ifdown -a. (Closes: #992102) + + -- Guillem Jover <[email protected]> Sun, 17 Oct 2021 06:02:55 +0200 I have explicitly CC'ed Guillem as well who did the 2.13 upload to unstable for comments. I'm open though to just cherry-pick the two changes if you find this what should go to bullseye. Regards, Salvatore
diff -Nru ifenslave-2.12/debian/98-net-bonding.link ifenslave-2.13~deb11u1/debian/98-net-bonding.link --- ifenslave-2.12/debian/98-net-bonding.link 1970-01-01 01:00:00.000000000 +0100 +++ ifenslave-2.13~deb11u1/debian/98-net-bonding.link 2022-06-25 09:45:37.000000000 +0200 @@ -0,0 +1,5 @@ +[Match] +Driver=bonding + +[Link] +MACAddressPolicy=none diff -Nru ifenslave-2.12/debian/changelog ifenslave-2.13~deb11u1/debian/changelog --- ifenslave-2.12/debian/changelog 2021-05-03 16:51:57.000000000 +0200 +++ ifenslave-2.13~deb11u1/debian/changelog 2022-06-25 09:45:37.000000000 +0200 @@ -1,3 +1,32 @@ +ifenslave (2.13~deb11u1) bullseye; urgency=medium + + * Rebuild for bullseye + * Revert "Bump Standards-Version to 4.6.0 (no changed needed)" + + -- Salvatore Bonaccorso <[email protected]> Sat, 25 Jun 2022 09:45:37 +0200 + +ifenslave (2.13) unstable; urgency=medium + + * QA upload. + + [ Guillem Jover ] + * Fix MAC address setting messed up by udev for bond interfaces. + (Closes: #949062) + * Use ifquery instead of example contrib script ifstate. (Closes: #991930) + * Fix ifquery redirections. + * Bump Standards-Version to 4.6.0 (no changed needed). + * Remove long supported Linux version requirements from Description. + + [ Sami Haahtinen ] + * Use correct argument in setup_slave_device(). (Closes: #968368) + + [ Oleander Reis ] + * Handle slave definitions of interfaces with no bond settings. + (Closes: #990428) + * Delete bond interfaces on ifdown -a. (Closes: #992102) + + -- Guillem Jover <[email protected]> Sun, 17 Oct 2021 06:02:55 +0200 + ifenslave (2.12) unstable; urgency=medium * QA upload. diff -Nru ifenslave-2.12/debian/control ifenslave-2.13~deb11u1/debian/control --- ifenslave-2.12/debian/control 2021-04-29 16:14:10.000000000 +0200 +++ ifenslave-2.13~deb11u1/debian/control 2022-06-25 09:45:37.000000000 +0200 @@ -26,4 +26,3 @@ "channel bonding" or "trunking" techniques used in switches. . The kernel must have support for bonding devices for ifenslave to be useful. - This package supports 2.6.x kernels and the recent 3.x.x kernels. diff -Nru ifenslave-2.12/debian/ifenslave.if-post-down ifenslave-2.13~deb11u1/debian/ifenslave.if-post-down --- ifenslave-2.12/debian/ifenslave.if-post-down 2021-04-29 16:14:10.000000000 +0200 +++ ifenslave-2.13~deb11u1/debian/ifenslave.if-post-down 2022-06-25 09:45:37.000000000 +0200 @@ -56,10 +56,13 @@ read -r slaves < "$BOND_PARAMS/slaves" for slave in $slaves ; do # This is supposed to have the side effect of freeing the interface. - ifquery --state "$slave" && ifdown $v "$slave" + ifquery --state "$slave" >/dev/null 2>&1 && ifdown $v "$slave" # Anyway, ensure $slave is free. if [ -f "/sys/class/net/$slave/master/bonding/slaves" ] ; then echo "-$slave" > "$BOND_PARAMS/slaves" 2> /dev/null fi done + +# Delete the bond interface +ip link del dev "$IFACE" diff -Nru ifenslave-2.12/debian/ifenslave.if-pre-up ifenslave-2.13~deb11u1/debian/ifenslave.if-pre-up --- ifenslave-2.12/debian/ifenslave.if-pre-up 2021-05-03 16:41:02.000000000 +0200 +++ ifenslave-2.13~deb11u1/debian/ifenslave.if-pre-up 2022-06-25 09:45:37.000000000 +0200 @@ -83,8 +83,8 @@ export IFENSLAVE_ENV_NAME="IFUPDOWN_$slave" IFUPDOWN_IFACE="$(printenv "$IFENSLAVE_ENV_NAME")" unset IFENSLAVE_ENV_NAME - if ifquery --state "$slave" 2>/dev/null || [ -n "$IFUPDOWN_IFACE" ] ; then - # Skipping interface that's already up or being configured + if ( ( ifquery --state "$slave" >/dev/null 2>&1 ) && ( ifquery "$slave" | grep -q bond-master ) ) || [ -n "$IFUPDOWN_IFACE" ] ; then + # Skipping interface that's already up or being configured and has bonding configuration continue else # Ensure $slave is down. @@ -156,7 +156,7 @@ sysfs active_slave "" else # Need to force interface up before. Bonding will refuse to activate a down interface. - if ifquery -l "$IF_BOND_ACTIVE_SLAVE" 2>/dev/null ; then + if ifquery -l "$IF_BOND_ACTIVE_SLAVE" >/dev/null 2>&1 ; then ifup "$IF_BOND_ACTIVE_SLAVE" else ip link set "$IF_BOND_ACTIVE_SLAVE" up @@ -194,7 +194,7 @@ setup_slave_device() { # Require the bond master to have an iface stanza - if ! ifstate -l "$IF_BOND_MASTER" 2>/dev/null ; then + if ! ifquery -l "$IF_BOND_MASTER" >/dev/null 2>&1 ; then echo "No iface stanza found for master $IF_BOND_MASTER" >&2 exit 1 fi @@ -204,13 +204,13 @@ IFUPDOWN_IF_BOND_MASTER="$(printenv "$IFENSLAVE_ENV_NAME")" unset IFENSLAVE_ENV_NAME if [ -z "$IFUPDOWN_IF_BOND_MASTER" ] ; then - ifquery --state "$IF_BOND_MASTER" 2>/dev/null || ifup "$IF_BOND_MASTER" + ifquery --state "$IF_BOND_MASTER" >/dev/null 2>&1 || ifup "$IF_BOND_MASTER" fi # Enslave it to the master - ip link set "$slave" down 2>/dev/null - if ! sysfs_add slaves "$slave" 2>/dev/null ; then - echo "Failed to enslave $slave to $BOND_MASTER." >&2 + ip link set "$1" down 2>/dev/null + if ! sysfs_add slaves "$1" 2>/dev/null ; then + echo "Failed to enslave $1 to $BOND_MASTER." >&2 fi setup_primary diff -Nru ifenslave-2.12/debian/ifenslave.install ifenslave-2.13~deb11u1/debian/ifenslave.install --- ifenslave-2.12/debian/ifenslave.install 1970-01-01 01:00:00.000000000 +0100 +++ ifenslave-2.13~deb11u1/debian/ifenslave.install 2022-06-25 09:45:37.000000000 +0200 @@ -0,0 +1 @@ +debian/98-net-bonding.link lib/systemd/network/

