Thanks Guus. I can confirm that the following config for the bridged interface indeed resolves the problem for me:
auto lan0 no-auto-down lan0 iface lan0 inet dhcp bridge_ports ens3 bridge_stp off bridge_maxwait 5 I should note that this workaround wasn't required in wheezy and prior (as noted in my original report, this issue first shows up in jessie), and I doubt the aoe module was handling teardown any more cleanly back then than it is today, so it's still a puzzle as to why this broke in the first place. Thanks again. On Sun, Mar 19, 2017 at 10:54 AM, Guus Sliepen <g...@debian.org> wrote: > On Sun, Mar 12, 2017 at 08:36:19PM +0100, Michael Biebl wrote: > > > > The stop job for 'Raise network interfaces' fails to complete when > > > shutting down or rebooting a fresh stretch install when certain > > > conditions are met: > > > > > > * ATA-over-Ethernet (aoe) kernel module is loaded, and AOE devices are > > > listed in /dev/etherd > > > * Interface bridging via brctl is used > > > > > > If either one of these conditions are not satisfied, reboot or shutdown > > > will proceed without issue. If both are present, 'Raise network > > > interfaces' will repeatedly try to stop, raising the timeout on > > > occasion, but will never complete. This means an easy workaround is > > > ensuring the 'aoe' kernel module is removed before shutting down or > > > rebooting, if no aoe disks are in use at that time, but that can't be > > > guaranteed in all situations. > > > > This looks like something which needs to be looked at by the ifupdown > > maintainter, so reassigning accordingly. > > This seems to be an issue with the AoE implementation in the kernel. It > correctly keeps an interface busy when an AoE device is mounted over it, > but it handles the teardown very badly. > > I'm not sure how you mount the AoE device, but most likely there is > nothing declaring a relationship between it and the bridge interface. So > systemd will not unmount the device before trying to stop the network. > > Ifupdown in turn will call brctl delif. I see that this causes the brctl > command to hang. The kernel will repeatedly log this: > > unregister_netdevice: waiting for br0 to become free. Usage count = 1 > > Meanwhile br0 has disappeared from the output of ifconfig. Also, any > access to the mounted device will also hang (because the slaves of the > bridge are down at this point). > > Either you have to ensure that systemd unmounts the device before > bringing down the network, or as a workaround you can tell ifupdown to > keep the bridge interface up at shutdown time, by adding something like > this to /etc/network/interfaces: > > no-auto-down br0 > > -- > Met vriendelijke groet / with kind regards, > Guus Sliepen <g...@debian.org> >