]> git.proxmox.com Git - mirror_ifupdown2.git/commit - ifupdown2/addons/addressvirtual.py
[PATCH ifupdown2] addons: addressvirtual: fixup macvlan device enslavements for vrfs
authorRoopa Prabhu <roopa@cumulusnetworks.com>
Wed, 19 Oct 2016 17:43:45 +0000 (10:43 -0700)
committerRoopa Prabhu <roopa@cumulusnetworks.com>
Thu, 20 Oct 2016 05:23:05 +0000 (22:23 -0700)
commit42e85fc834d83a55dc9904e1fc0488c15fdcca86
tree59396c1a38cc2a9b895fc3d711e5a7bd23c25919
parent90649d374a50581831e0eba0b57adfaa0ff25755
[PATCH ifupdown2] addons: addressvirtual: fixup macvlan device enslavements for vrfs

Ticket: CM-12988
Reviewed By: julien, nikhil, dsa
Testing Done: tested ifup and ifdown of vrf devices with address virtual
slaves

This patch fixes up macvlan device enslavements when vrf device
or vrf slave is brought down and up. address virtual macvlan
devices on vrf slaves need to enslaved to the vrf. This
patch checks and fixes up those vrf enslavements for the following
cases:
ifdown <vrf_device> && ifup <vrf_device>
ifdown <vrf_slave> && ifup <vrf_slave>

starting state:
------------
$ip -br link show
myvrf            UP  46:c6:44:db:37:60 <NOARP,MASTER,UP,LOWER_UP>
bridge.901@bridge UP 44:38:39:00:77:88 <UP,BROADCAST,MULTICAST,UP>
bridge-901-v0@bridge.901 UP 00:00:5e:00:01:81 <UP,BROADCAST,MULTICAST,UP>

$ifdown myvrf
$ip -br link show
bridge.901@bridge DOWN           44:38:39:00:77:88 <BROADCAST,MULTICAST>
bridge-901-v0@bridge.901 DOWN    00:00:5e:00:01:81 <BROADCAST,MULTICAST,M-DOWN>

before patch (macvlan device bridge-901-v0 did not come up:
----------------------------------------
$ifup myvrf
$ip -br link show
bridge.901@bridge UP 44:38:39:00:77:88 <UP,BROADCAST,MULTICAST,UP>
bridge-901-v0@bridge.901 DOWN  00:00:5e:00:01:81 <BROADCAST,MULTICAST>
myvrf            UP             ce:a6:e1:85:75:73 <NOARP,MASTER,UP,LOWER_UP>

after patch:
------------
$ifup myvrf
$ip -br link show
bridge.901@bridge UP 44:38:39:00:77:88 <UP,BROADCAST,MULTICAST,UP>
bridge-901-v0@bridge.901 UP 00:00:5e:00:01:81 <UP,BROADCAST,MULTICAST,UP>
myvrf                   UP     ce:a6:e1:85:75:73 <NOARP,MASTER,UP,LOWER_UP>

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
addons/addressvirtual.py
addons/vrf.py
ifupdown/iface.py
ifupdownaddons/iproute2.py