bonding: deliver netdev event for fail-over under the active-backup mode
authorOr Gerlitz <ogerlitz@voltaire.com>
Sat, 14 Jun 2008 01:12:02 +0000 (18:12 -0700)
committerJeff Garzik <jgarzik@redhat.com>
Wed, 18 Jun 2008 03:59:42 +0000 (23:59 -0400)
commit01f3109de49a889db8adf9116449727547ee497e
tree5c35e4c7b39c9e652549a69b7c635edb96e1d68e
parent709f8a45e8521f2f4229e5fdf3ded1fb77e2ca4e
bonding: deliver netdev event for fail-over under the active-backup mode

under active-backup mode and when there's actual new_active slave,
have bond_change_active_slave() call the networking core to deliver
NETDEV_BONDING_FAILOVER event such that the fail-over can be notable
by code outside of the bonding driver such as the RDMA stack and
monitoring tools.

As the correct context of locking appropriate for notifier calls is RTNL
and nothing else, bond->curr_slave_lock and bond->lock are unlocked and
later locked again. This is ensured by the rest of the code to be safe
under backup-mode AND when new_active is not NULL.

Jay Vosburgh modified the original patch for formatting and fixed a
compiler error.

Signed-off-by: Or Gerlitz <ogerlitz@voltaire.com>
Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/net/bonding/bond_main.c