aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2012-03-09 17:34:20 -0500
committerDavid S. Miller <davem@davemloft.net>2012-03-09 17:34:20 -0500
commitb2d3298e0916fa059712691c85a0e97becc4ab9f (patch)
treec7d5ea46a9dbf9cebdb122df4aaf0beda6e7621e /drivers/net
parent1a0bdadb4e36abac63b0a9787f372aac30c11a9e (diff)
parenta7f4255f906f60f72e00aad2fb000939449ff32e (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/caif/caif_hsi.c2
-rw-r--r--drivers/net/ethernet/atheros/atl1c/atl1c_main.c2
-rw-r--r--drivers/net/ethernet/broadcom/tg3.c6
-rw-r--r--drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c2
-rw-r--r--drivers/net/ethernet/chelsio/cxgb4vf/cxgb4vf_main.c2
-rw-r--r--drivers/net/ethernet/ibm/ehea/ehea_main.c4
-rw-r--r--drivers/net/ethernet/mellanox/mlx4/qp.c5
-rw-r--r--drivers/net/ethernet/mellanox/mlx4/resource_tracker.c3
-rw-r--r--drivers/net/ethernet/realtek/r8169.c5
-rw-r--r--drivers/net/hyperv/netvsc_drv.c4
-rw-r--r--drivers/net/usb/usbnet.c2
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-agn-lib.c2
12 files changed, 23 insertions, 16 deletions
diff --git a/drivers/net/caif/caif_hsi.c b/drivers/net/caif/caif_hsi.c
index c8afd62239e9..9a66e2a910ae 100644
--- a/drivers/net/caif/caif_hsi.c
+++ b/drivers/net/caif/caif_hsi.c
@@ -1031,7 +1031,7 @@ static void cfhsi_setup(struct net_device *dev)
1031 dev->netdev_ops = &cfhsi_ops; 1031 dev->netdev_ops = &cfhsi_ops;
1032 dev->type = ARPHRD_CAIF; 1032 dev->type = ARPHRD_CAIF;
1033 dev->flags = IFF_POINTOPOINT | IFF_NOARP; 1033 dev->flags = IFF_POINTOPOINT | IFF_NOARP;
1034 dev->mtu = CFHSI_MAX_PAYLOAD_SZ; 1034 dev->mtu = CFHSI_MAX_CAIF_FRAME_SZ;
1035 dev->tx_queue_len = 0; 1035 dev->tx_queue_len = 0;
1036 dev->destructor = free_netdev; 1036 dev->destructor = free_netdev;
1037 skb_queue_head_init(&cfhsi->qhead); 1037 skb_queue_head_init(&cfhsi->qhead);
diff --git a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
index 0f21a9b4cdd4..1ef0c9275dee 100644
--- a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
+++ b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
@@ -1711,7 +1711,7 @@ static irqreturn_t atl1c_intr(int irq, void *data)
1711 "atl1c hardware error (status = 0x%x)\n", 1711 "atl1c hardware error (status = 0x%x)\n",
1712 status & ISR_ERROR); 1712 status & ISR_ERROR);
1713 /* reset MAC */ 1713 /* reset MAC */
1714 adapter->work_event |= ATL1C_WORK_EVENT_RESET; 1714 set_bit(ATL1C_WORK_EVENT_RESET, &adapter->work_event);
1715 schedule_work(&adapter->common_task); 1715 schedule_work(&adapter->common_task);
1716 return IRQ_HANDLED; 1716 return IRQ_HANDLED;
1717 } 1717 }
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
index bc236b6a7a91..b0657466041d 100644
--- a/drivers/net/ethernet/broadcom/tg3.c
+++ b/drivers/net/ethernet/broadcom/tg3.c
@@ -5595,7 +5595,7 @@ static void tg3_tx(struct tg3_napi *tnapi)
5595 } 5595 }
5596 } 5596 }
5597 5597
5598 netdev_completed_queue(tp->dev, pkts_compl, bytes_compl); 5598 netdev_tx_completed_queue(txq, pkts_compl, bytes_compl);
5599 5599
5600 tnapi->tx_cons = sw_idx; 5600 tnapi->tx_cons = sw_idx;
5601 5601
@@ -6971,7 +6971,7 @@ static netdev_tx_t tg3_start_xmit(struct sk_buff *skb, struct net_device *dev)
6971 } 6971 }
6972 6972
6973 skb_tx_timestamp(skb); 6973 skb_tx_timestamp(skb);
6974 netdev_sent_queue(tp->dev, skb->len); 6974 netdev_tx_sent_queue(txq, skb->len);
6975 6975
6976 /* Sync BD data before updating mailbox */ 6976 /* Sync BD data before updating mailbox */
6977 wmb(); 6977 wmb();
@@ -7396,8 +7396,8 @@ static void tg3_free_rings(struct tg3 *tp)
7396 7396
7397 dev_kfree_skb_any(skb); 7397 dev_kfree_skb_any(skb);
7398 } 7398 }
7399 netdev_tx_reset_queue(netdev_get_tx_queue(tp->dev, j));
7399 } 7400 }
7400 netdev_reset_queue(tp->dev);
7401} 7401}
7402 7402
7403/* Initialize tx/rx rings for packet processing. 7403/* Initialize tx/rx rings for packet processing.
diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
index 1d889427073f..05ff076af06d 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
@@ -196,6 +196,8 @@ static DEFINE_PCI_DEVICE_TABLE(cxgb4_pci_tbl) = {
196 CH_DEVICE(0x4408, 4), 196 CH_DEVICE(0x4408, 4),
197 CH_DEVICE(0x4409, 4), 197 CH_DEVICE(0x4409, 4),
198 CH_DEVICE(0x440a, 4), 198 CH_DEVICE(0x440a, 4),
199 CH_DEVICE(0x440d, 4),
200 CH_DEVICE(0x440e, 4),
199 { 0, } 201 { 0, }
200}; 202};
201 203
diff --git a/drivers/net/ethernet/chelsio/cxgb4vf/cxgb4vf_main.c b/drivers/net/ethernet/chelsio/cxgb4vf/cxgb4vf_main.c
index 3f580c0c28a6..25e3308fc9d8 100644
--- a/drivers/net/ethernet/chelsio/cxgb4vf/cxgb4vf_main.c
+++ b/drivers/net/ethernet/chelsio/cxgb4vf/cxgb4vf_main.c
@@ -2890,6 +2890,8 @@ static struct pci_device_id cxgb4vf_pci_tbl[] = {
2890 CH_DEVICE(0x4808, 0), /* T420-cx */ 2890 CH_DEVICE(0x4808, 0), /* T420-cx */
2891 CH_DEVICE(0x4809, 0), /* T420-bt */ 2891 CH_DEVICE(0x4809, 0), /* T420-bt */
2892 CH_DEVICE(0x480a, 0), /* T404-bt */ 2892 CH_DEVICE(0x480a, 0), /* T404-bt */
2893 CH_DEVICE(0x480d, 0), /* T480-cr */
2894 CH_DEVICE(0x480e, 0), /* T440-lp-cr */
2893 { 0, } 2895 { 0, }
2894}; 2896};
2895 2897
diff --git a/drivers/net/ethernet/ibm/ehea/ehea_main.c b/drivers/net/ethernet/ibm/ehea/ehea_main.c
index 8b73dd472475..3516e17a399d 100644
--- a/drivers/net/ethernet/ibm/ehea/ehea_main.c
+++ b/drivers/net/ethernet/ibm/ehea/ehea_main.c
@@ -336,7 +336,9 @@ static struct rtnl_link_stats64 *ehea_get_stats64(struct net_device *dev,
336 stats->tx_bytes = tx_bytes; 336 stats->tx_bytes = tx_bytes;
337 stats->rx_packets = rx_packets; 337 stats->rx_packets = rx_packets;
338 338
339 return &port->stats; 339 stats->multicast = port->stats.multicast;
340 stats->rx_errors = port->stats.rx_errors;
341 return stats;
340} 342}
341 343
342static void ehea_update_stats(struct work_struct *work) 344static void ehea_update_stats(struct work_struct *work)
diff --git a/drivers/net/ethernet/mellanox/mlx4/qp.c b/drivers/net/ethernet/mellanox/mlx4/qp.c
index 738f950a1ce5..fb2b36759cbf 100644
--- a/drivers/net/ethernet/mellanox/mlx4/qp.c
+++ b/drivers/net/ethernet/mellanox/mlx4/qp.c
@@ -151,11 +151,6 @@ static int __mlx4_qp_modify(struct mlx4_dev *dev, struct mlx4_mtt *mtt,
151 context->log_page_size = mtt->page_shift - MLX4_ICM_PAGE_SHIFT; 151 context->log_page_size = mtt->page_shift - MLX4_ICM_PAGE_SHIFT;
152 } 152 }
153 153
154 port = ((context->pri_path.sched_queue >> 6) & 1) + 1;
155 if (dev->caps.port_type[port] == MLX4_PORT_TYPE_ETH)
156 context->pri_path.sched_queue = (context->pri_path.sched_queue &
157 0xc3);
158
159 *(__be32 *) mailbox->buf = cpu_to_be32(optpar); 154 *(__be32 *) mailbox->buf = cpu_to_be32(optpar);
160 memcpy(mailbox->buf + 8, context, sizeof *context); 155 memcpy(mailbox->buf + 8, context, sizeof *context);
161 156
diff --git a/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c b/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c
index bfdb7af19e49..8752e6e08169 100644
--- a/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c
+++ b/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c
@@ -2255,8 +2255,7 @@ int mlx4_MODIFY_CQ_wrapper(struct mlx4_dev *dev, int slave,
2255 2255
2256 if (vhcr->op_modifier == 0) { 2256 if (vhcr->op_modifier == 0) {
2257 err = handle_resize(dev, slave, vhcr, inbox, outbox, cmd, cq); 2257 err = handle_resize(dev, slave, vhcr, inbox, outbox, cmd, cq);
2258 if (err) 2258 goto ex_put;
2259 goto ex_put;
2260 } 2259 }
2261 2260
2262 err = mlx4_DMA_wrapper(dev, slave, vhcr, inbox, outbox, cmd); 2261 err = mlx4_DMA_wrapper(dev, slave, vhcr, inbox, outbox, cmd);
diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
index 817302c86069..c04df3d2b2a9 100644
--- a/drivers/net/ethernet/realtek/r8169.c
+++ b/drivers/net/ethernet/realtek/r8169.c
@@ -6292,6 +6292,9 @@ static void rtl_shutdown(struct pci_dev *pdev)
6292{ 6292{
6293 struct net_device *dev = pci_get_drvdata(pdev); 6293 struct net_device *dev = pci_get_drvdata(pdev);
6294 struct rtl8169_private *tp = netdev_priv(dev); 6294 struct rtl8169_private *tp = netdev_priv(dev);
6295 struct device *d = &pdev->dev;
6296
6297 pm_runtime_get_sync(d);
6295 6298
6296 rtl8169_net_suspend(dev); 6299 rtl8169_net_suspend(dev);
6297 6300
@@ -6309,6 +6312,8 @@ static void rtl_shutdown(struct pci_dev *pdev)
6309 pci_wake_from_d3(pdev, true); 6312 pci_wake_from_d3(pdev, true);
6310 pci_set_power_state(pdev, PCI_D3hot); 6313 pci_set_power_state(pdev, PCI_D3hot);
6311 } 6314 }
6315
6316 pm_runtime_put_noidle(d);
6312} 6317}
6313 6318
6314static struct pci_driver rtl8169_pci_driver = { 6319static struct pci_driver rtl8169_pci_driver = {
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
index 0ae7a1a6aeb0..217dfedbba20 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -310,7 +310,7 @@ int netvsc_recv_callback(struct hv_device *device_obj,
310static void netvsc_get_drvinfo(struct net_device *net, 310static void netvsc_get_drvinfo(struct net_device *net,
311 struct ethtool_drvinfo *info) 311 struct ethtool_drvinfo *info)
312{ 312{
313 strcpy(info->driver, "hv_netvsc"); 313 strcpy(info->driver, KBUILD_MODNAME);
314 strcpy(info->version, HV_DRV_VERSION); 314 strcpy(info->version, HV_DRV_VERSION);
315 strcpy(info->fw_version, "N/A"); 315 strcpy(info->fw_version, "N/A");
316} 316}
@@ -482,7 +482,7 @@ MODULE_DEVICE_TABLE(vmbus, id_table);
482 482
483/* The one and only one */ 483/* The one and only one */
484static struct hv_driver netvsc_drv = { 484static struct hv_driver netvsc_drv = {
485 .name = "netvsc", 485 .name = KBUILD_MODNAME,
486 .id_table = id_table, 486 .id_table = id_table,
487 .probe = netvsc_probe, 487 .probe = netvsc_probe,
488 .remove = netvsc_remove, 488 .remove = netvsc_remove,
diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c
index b924f46c963c..83dcc530618e 100644
--- a/drivers/net/usb/usbnet.c
+++ b/drivers/net/usb/usbnet.c
@@ -589,6 +589,7 @@ static int unlink_urbs (struct usbnet *dev, struct sk_buff_head *q)
589 entry = (struct skb_data *) skb->cb; 589 entry = (struct skb_data *) skb->cb;
590 urb = entry->urb; 590 urb = entry->urb;
591 591
592 spin_unlock_irqrestore(&q->lock, flags);
592 // during some PM-driven resume scenarios, 593 // during some PM-driven resume scenarios,
593 // these (async) unlinks complete immediately 594 // these (async) unlinks complete immediately
594 retval = usb_unlink_urb (urb); 595 retval = usb_unlink_urb (urb);
@@ -596,6 +597,7 @@ static int unlink_urbs (struct usbnet *dev, struct sk_buff_head *q)
596 netdev_dbg(dev->net, "unlink urb err, %d\n", retval); 597 netdev_dbg(dev->net, "unlink urb err, %d\n", retval);
597 else 598 else
598 count++; 599 count++;
600 spin_lock_irqsave(&q->lock, flags);
599 } 601 }
600 spin_unlock_irqrestore (&q->lock, flags); 602 spin_unlock_irqrestore (&q->lock, flags);
601 return count; 603 return count;
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-lib.c b/drivers/net/wireless/iwlwifi/iwl-agn-lib.c
index 915183a3a873..f98baaba0c2a 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn-lib.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn-lib.c
@@ -1237,7 +1237,7 @@ int iwlagn_suspend(struct iwl_priv *priv, struct cfg80211_wowlan *wowlan)
1237 .flags = CMD_SYNC, 1237 .flags = CMD_SYNC,
1238 .data[0] = key_data.rsc_tsc, 1238 .data[0] = key_data.rsc_tsc,
1239 .dataflags[0] = IWL_HCMD_DFL_NOCOPY, 1239 .dataflags[0] = IWL_HCMD_DFL_NOCOPY,
1240 .len[0] = sizeof(key_data.rsc_tsc), 1240 .len[0] = sizeof(*key_data.rsc_tsc),
1241 }; 1241 };
1242 1242
1243 ret = iwl_dvm_send_cmd(priv, &rsc_tsc_cmd); 1243 ret = iwl_dvm_send_cmd(priv, &rsc_tsc_cmd);