diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-21 12:31:48 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-21 12:31:48 -0500 |
commit | 3d1f337b3e7378923c89f37afb573a918ef40be5 (patch) | |
tree | 386798378567a10d1c7b24f599cb50f70298694c /drivers/infiniband/ulp/ipoib/ipoib_main.c | |
parent | 2bf2154c6bb5599e3ec3f73c34861a0b12aa839e (diff) | |
parent | 5e35941d990123f155b02d5663e51a24f816b6f3 (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (235 commits)
[NETFILTER]: Add H.323 conntrack/NAT helper
[TG3]: Don't mark tg3_test_registers() as returning const.
[IPV6]: Cleanups for net/ipv6/addrconf.c (kzalloc, early exit) v2
[IPV6]: Nearly complete kzalloc cleanup for net/ipv6
[IPV6]: Cleanup of net/ipv6/reassambly.c
[BRIDGE]: Remove duplicate const from is_link_local() argument type.
[DECNET]: net/decnet/dn_route.c: fix inconsequent NULL checking
[TG3]: make drivers/net/tg3.c:tg3_request_irq() static
[BRIDGE]: use LLC to send STP
[LLC]: llc_mac_hdr_init const arguments
[BRIDGE]: allow show/store of group multicast address
[BRIDGE]: use llc for receiving STP packets
[BRIDGE]: stp timer to jiffies cleanup
[BRIDGE]: forwarding remove unneeded preempt and bh diasables
[BRIDGE]: netfilter inline cleanup
[BRIDGE]: netfilter VLAN macro cleanup
[BRIDGE]: netfilter dont use __constant_htons
[BRIDGE]: netfilter whitespace
[BRIDGE]: optimize frame pass up
[BRIDGE]: use kzalloc
...
Diffstat (limited to 'drivers/infiniband/ulp/ipoib/ipoib_main.c')
-rw-r--r-- | drivers/infiniband/ulp/ipoib/ipoib_main.c | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_main.c b/drivers/infiniband/ulp/ipoib/ipoib_main.c index 0ebacd558ff6..37da8d3dc388 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_main.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c | |||
@@ -253,7 +253,6 @@ static void path_free(struct net_device *dev, struct ipoib_path *path) | |||
253 | if (neigh->ah) | 253 | if (neigh->ah) |
254 | ipoib_put_ah(neigh->ah); | 254 | ipoib_put_ah(neigh->ah); |
255 | *to_ipoib_neigh(neigh->neighbour) = NULL; | 255 | *to_ipoib_neigh(neigh->neighbour) = NULL; |
256 | neigh->neighbour->ops->destructor = NULL; | ||
257 | kfree(neigh); | 256 | kfree(neigh); |
258 | } | 257 | } |
259 | 258 | ||
@@ -531,7 +530,6 @@ static void neigh_add_path(struct sk_buff *skb, struct net_device *dev) | |||
531 | err: | 530 | err: |
532 | *to_ipoib_neigh(skb->dst->neighbour) = NULL; | 531 | *to_ipoib_neigh(skb->dst->neighbour) = NULL; |
533 | list_del(&neigh->list); | 532 | list_del(&neigh->list); |
534 | neigh->neighbour->ops->destructor = NULL; | ||
535 | kfree(neigh); | 533 | kfree(neigh); |
536 | 534 | ||
537 | ++priv->stats.tx_dropped; | 535 | ++priv->stats.tx_dropped; |
@@ -770,21 +768,9 @@ static void ipoib_neigh_destructor(struct neighbour *n) | |||
770 | ipoib_put_ah(ah); | 768 | ipoib_put_ah(ah); |
771 | } | 769 | } |
772 | 770 | ||
773 | static int ipoib_neigh_setup(struct neighbour *neigh) | ||
774 | { | ||
775 | /* | ||
776 | * Is this kosher? I can't find anybody in the kernel that | ||
777 | * sets neigh->destructor, so we should be able to set it here | ||
778 | * without trouble. | ||
779 | */ | ||
780 | neigh->ops->destructor = ipoib_neigh_destructor; | ||
781 | |||
782 | return 0; | ||
783 | } | ||
784 | |||
785 | static int ipoib_neigh_setup_dev(struct net_device *dev, struct neigh_parms *parms) | 771 | static int ipoib_neigh_setup_dev(struct net_device *dev, struct neigh_parms *parms) |
786 | { | 772 | { |
787 | parms->neigh_setup = ipoib_neigh_setup; | 773 | parms->neigh_destructor = ipoib_neigh_destructor; |
788 | 774 | ||
789 | return 0; | 775 | return 0; |
790 | } | 776 | } |