diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-03-26 18:54:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-03-26 18:54:36 -0400 |
commit | 13220a94d35708d5378114e96ffcc88d0a74fe99 (patch) | |
tree | be6530677d5f9536c7211e05ba012923e4c0b307 /drivers/infiniband/ulp/ipoib | |
parent | 8690d8a9f6c2d5728a9c9f68231f1bb4de109e3a (diff) | |
parent | 08abe18af1f78ee80c3c3a5ac47c3e0ae0beadf6 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1750 commits)
ixgbe: Allow Priority Flow Control settings to survive a device reset
net: core: remove unneeded include in net/core/utils.c.
e1000e: update version number
e1000e: fix close interrupt race
e1000e: fix loss of multicast packets
e1000e: commonize tx cleanup routine to match e1000 & igb
netfilter: fix nf_logger name in ebt_ulog.
netfilter: fix warning in ebt_ulog init function.
netfilter: fix warning about invalid const usage
e1000: fix close race with interrupt
e1000: cleanup clean_tx_irq routine so that it completely cleans ring
e1000: fix tx hang detect logic and address dma mapping issues
bridge: bad error handling when adding invalid ether address
bonding: select current active slave when enslaving device for mode tlb and alb
gianfar: reallocate skb when headroom is not enough for fcb
Bump release date to 25Mar2009 and version to 0.22
r6040: Fix second PHY address
qeth: fix wait_event_timeout handling
qeth: check for completion of a running recovery
qeth: unregister MAC addresses during recovery.
...
Manually fixed up conflicts in:
drivers/infiniband/hw/cxgb3/cxio_hal.h
drivers/infiniband/hw/nes/nes_nic.c
Diffstat (limited to 'drivers/infiniband/ulp/ipoib')
-rw-r--r-- | drivers/infiniband/ulp/ipoib/ipoib_ib.c | 6 | ||||
-rw-r--r-- | drivers/infiniband/ulp/ipoib/ipoib_main.c | 18 |
2 files changed, 14 insertions, 10 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_ib.c b/drivers/infiniband/ulp/ipoib/ipoib_ib.c index a1925810be3c..da6082739839 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_ib.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_ib.c | |||
@@ -446,11 +446,11 @@ poll_more: | |||
446 | if (dev->features & NETIF_F_LRO) | 446 | if (dev->features & NETIF_F_LRO) |
447 | lro_flush_all(&priv->lro.lro_mgr); | 447 | lro_flush_all(&priv->lro.lro_mgr); |
448 | 448 | ||
449 | netif_rx_complete(napi); | 449 | napi_complete(napi); |
450 | if (unlikely(ib_req_notify_cq(priv->recv_cq, | 450 | if (unlikely(ib_req_notify_cq(priv->recv_cq, |
451 | IB_CQ_NEXT_COMP | | 451 | IB_CQ_NEXT_COMP | |
452 | IB_CQ_REPORT_MISSED_EVENTS)) && | 452 | IB_CQ_REPORT_MISSED_EVENTS)) && |
453 | netif_rx_reschedule(napi)) | 453 | napi_reschedule(napi)) |
454 | goto poll_more; | 454 | goto poll_more; |
455 | } | 455 | } |
456 | 456 | ||
@@ -462,7 +462,7 @@ void ipoib_ib_completion(struct ib_cq *cq, void *dev_ptr) | |||
462 | struct net_device *dev = dev_ptr; | 462 | struct net_device *dev = dev_ptr; |
463 | struct ipoib_dev_priv *priv = netdev_priv(dev); | 463 | struct ipoib_dev_priv *priv = netdev_priv(dev); |
464 | 464 | ||
465 | netif_rx_schedule(&priv->napi); | 465 | napi_schedule(&priv->napi); |
466 | } | 466 | } |
467 | 467 | ||
468 | static void drain_tx_cq(struct net_device *dev) | 468 | static void drain_tx_cq(struct net_device *dev) |
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_main.c b/drivers/infiniband/ulp/ipoib/ipoib_main.c index 353c13b91e8f..421a6640c9bd 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_main.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c | |||
@@ -1021,18 +1021,22 @@ static void ipoib_lro_setup(struct ipoib_dev_priv *priv) | |||
1021 | priv->lro.lro_mgr.ip_summed_aggr = CHECKSUM_UNNECESSARY; | 1021 | priv->lro.lro_mgr.ip_summed_aggr = CHECKSUM_UNNECESSARY; |
1022 | } | 1022 | } |
1023 | 1023 | ||
1024 | static const struct net_device_ops ipoib_netdev_ops = { | ||
1025 | .ndo_open = ipoib_open, | ||
1026 | .ndo_stop = ipoib_stop, | ||
1027 | .ndo_change_mtu = ipoib_change_mtu, | ||
1028 | .ndo_start_xmit = ipoib_start_xmit, | ||
1029 | .ndo_tx_timeout = ipoib_timeout, | ||
1030 | .ndo_set_multicast_list = ipoib_set_mcast_list, | ||
1031 | .ndo_neigh_setup = ipoib_neigh_setup_dev, | ||
1032 | }; | ||
1033 | |||
1024 | static void ipoib_setup(struct net_device *dev) | 1034 | static void ipoib_setup(struct net_device *dev) |
1025 | { | 1035 | { |
1026 | struct ipoib_dev_priv *priv = netdev_priv(dev); | 1036 | struct ipoib_dev_priv *priv = netdev_priv(dev); |
1027 | 1037 | ||
1028 | dev->open = ipoib_open; | 1038 | dev->netdev_ops = &ipoib_netdev_ops; |
1029 | dev->stop = ipoib_stop; | ||
1030 | dev->change_mtu = ipoib_change_mtu; | ||
1031 | dev->hard_start_xmit = ipoib_start_xmit; | ||
1032 | dev->tx_timeout = ipoib_timeout; | ||
1033 | dev->header_ops = &ipoib_header_ops; | 1039 | dev->header_ops = &ipoib_header_ops; |
1034 | dev->set_multicast_list = ipoib_set_mcast_list; | ||
1035 | dev->neigh_setup = ipoib_neigh_setup_dev; | ||
1036 | 1040 | ||
1037 | ipoib_set_ethtool_ops(dev); | 1041 | ipoib_set_ethtool_ops(dev); |
1038 | 1042 | ||