]> git.proxmox.com Git - mirror_ifupdown2.git/commit
This patch moves bond slave link ownership to the bond module and makes
authorRoopa Prabhu <roopa@cumulusnetworks.com>
Tue, 9 Dec 2014 01:15:57 +0000 (17:15 -0800)
committerRoopa Prabhu <roopa@cumulusnetworks.com>
Tue, 9 Dec 2014 01:15:57 +0000 (17:15 -0800)
commit7f045fd8688216330db88373e654c4c2afd500c9
treee9cb2840def8a3cc290c7a7ce1d2717c4ed5e6a3
parent9562b117e4028679997cfd8dbfb8a3a5bdd2f3d3
This patch moves bond slave link ownership to the bond module and makes
sure that slaves can never be brought admin up on their own when they
are not in the bond

Ticket: CM-4408
Reviewed By: CCR-2323
Testing Done: Tested ifup/ifdown of bond slaves and bond interface

This patch introduces:
- introduces 2 interface flags, LINK_MASTER and LINK_SLAVE.
- The bond module will set LINK_MASTER on the bond iface object
indicating that the bond module owns the link.
- Which means that all lower devices /slaves of the bond get their
link when the bond (aka LINK_MASTER) is processed in the bond module
- The module that queries dependencies propagates the LINK_SLAVE flags
on the dependents of LINK_MASTER.
- The scheduler now acts on the LINK_SLAVE flag. If LINK_SLAVE is set,
it skips setting admin 'up' on that interface. It also makes sure the
interface is not already in the bond.
    ie if an interface is a LINK_SLAVE (bond slave in this case), admin
up will not be executed when the interface is not inside the bond.
addons/ifenslave.py
ifupdown/iface.py
ifupdown/ifupdownmain.py