Quoting Libo Chen (clbchenlibo.chen@xxxxxxxxxx): > On 2013/11/29 13:05, Serge Hallyn wrote: > > Quoting Libo Chen (clbchenlibo.chen@xxxxxxxxxx): > >> Hello LXC experts, > >> > >> I meet a problem. When using vlan as network device in suse11 system container, > >> I can not use halt to stop this container. It hung on "eth0 is still used from interfaces eth0" in cycle. > >> > >> The config file: > >> > >> lxc.network.type = vlan > >> lxc.network.flags = up > >> lxc.network.link = eth0 > >> lxc.network.name = eth0 > >> lxc.network.vlan.id = 1301 > >> lxc.network.ipv4 = 128.5.131.100/24 > >> > >> > >> The reason is in the shell command /sbin/ifdown, see below: > >> > >> ###################################################################### > >> # Shut down depending interfaces > >> # > >> # Check if there are interfaces which depend on this interface. If yes these > >> # have to be shut down first. > >> # For example these might be bonding or vlan interfaces. Note that we don't > >> # catch all types of depending interfaces currently. See function > >> # 'get_depending_ifaces' in file 'functions' for details. > >> # > >> test "$SCRIPTNAME" = ifdown && DEP_IFACES=`get_depending_ifaces $INTERFACE` > >> if [ "$?" = 0 -a "$NODEPS" != yes ] ; then > >> message "`printf " %-9s is still used from interfaces %s" \ > >> $INTERFACE "$DEP_IFACES"`" > >> for DI in $DEP_IFACES; do > > > > Should the proper fix be to fix this script so that it doesn't call > > ifdown recursively if $DI = $INTERFACE ? > > Hi Serge, > > yes, I had try this way before as below: > > for DI in $DEP_IFACES; do > if [ "$DI" != "$INTERFACE" ] ; then > ifdown $DI -o $OPTIONS > fi > done > > It works well, but I have no idea it is safe enough and no side effects? It's safe enough and should have no side effects itself. But I recommend you first look up how get_depending_ifaces() is implemented. That's where this really should be fixed, and if it turns out that the proper fix for *that* is in the kernel then that's ok. -serge _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/containers