Commit 80fd2d6c authored by Travis Brown's avatar Travis Brown Committed by David S. Miller

macvlan: Change status when lower device goes down

Today macvlan ignores the notification when a lower device goes
administratively down, preventing the lack of connectivity from
bubbling up.

Processing NETDEV_DOWN results in a macvlan state of LOWERLAYERDOWN
with NO-CARRIER which should be easy to interpret in userspace.

2: lower: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
3: macvlan@lower: <NO-CARRIER,BROADCAST,MULTICAST,UP,M-DOWN> mtu 1500 qdisc noqueue state LOWERLAYERDOWN mode DEFAULT group default qlen 1000
Signed-off-by: default avatarSuresh Krishnan <skrishnan@arista.com>
Signed-off-by: default avatarTravis Brown <travisb@arista.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 0e97c4fb
...@@ -1641,6 +1641,7 @@ static int macvlan_device_event(struct notifier_block *unused, ...@@ -1641,6 +1641,7 @@ static int macvlan_device_event(struct notifier_block *unused,
switch (event) { switch (event) {
case NETDEV_UP: case NETDEV_UP:
case NETDEV_DOWN:
case NETDEV_CHANGE: case NETDEV_CHANGE:
list_for_each_entry(vlan, &port->vlans, list) list_for_each_entry(vlan, &port->vlans, list)
netif_stacked_transfer_operstate(vlan->lowerdev, netif_stacked_transfer_operstate(vlan->lowerdev,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment