[PATCH] bonding: Added Net Poll Support <resubmit>
From: Laurent Chavey <hidden>
Date: 2008-06-14 01:17:12
Resubmitting. Previous patch sent with html tags. Adding poll_controller support to bonding driver. Need by netdump. Signed-off-by: Laurent Chavey <redacted>
--- linux-2.6.25.org/drivers/net/bonding/bond_main.c 2008-04-1619:49:44.000000000 -0700
+++ linux-2.6.25/drivers/net/bonding/bond_main.c 2008-06-1318:03:48.000000000 -0700
@@ -3659,6 +3659,26 @@ /*-------------------------- Device entry points ----------------------------*/ +#ifdef CONFIG_NET_POLL_CONTROLLER +static void bond_poll_controller(struct net_device *dev) +{ + struct bonding *bond = netdev_priv(dev); + struct slave *curr = NULL; + int i = 0; + + read_lock(&bond->lock); + bond_for_each_slave(bond, curr, i) { + if ( IS_UP(curr->dev) ) { + if (curr->dev->poll_controller) { + curr->dev->poll_controller(curr->dev); + } + break; + } + } + read_unlock(&bond->lock); +} +#endif + static int bond_open(struct net_device *bond_dev) { struct bonding *bond = bond_dev->priv;
@@ -4435,6 +4455,9 @@ bond_dev->change_mtu = bond_change_mtu; bond_dev->set_mac_address = bond_set_mac_address; bond_dev->validate_addr = NULL; +#ifdef CONFIG_NET_POLL_CONTROLLER + bond_dev->poll_controller = bond_poll_controller; +#endif bond_set_mode_ops(bond, bond->params.mode); --