net/bonding: correctly proxy slave neigh param setup ndo function
authorShlomo Pongratz <shlomop@mellanox.com>
Tue, 3 Apr 2012 22:56:20 +0000 (22:56 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 4 Apr 2012 22:11:12 +0000 (18:11 -0400)
commit234bcf8a499ee206145c7007d12d9706a254f790
tree2f42f68294a5b1c8093a631d81ed580fee0d0595
parent2af73d4b2afe826d23e83f3747f850eefbd867ff
net/bonding: correctly proxy slave neigh param setup ndo function

The current implemenation was buggy for slaves who use ndo_neigh_setup,
since the networking stack invokes the bonding device ndo entry (from
neigh_params_alloc) before any devices are enslaved, and the bonding
driver can't further delegate the call at that point in time. As a
result when bonding IPoIB devices, the neigh_cleanup hasn't been called.

Fix that by deferring the actual call into the slave ndo_neigh_setup
from the time the bonding neigh_setup is called.

Signed-off-by: Shlomo Pongratz <shlomop@mellanox.com>
Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bonding/bond_main.c