aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/vmxnet3/vmxnet3_drv.c
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@secretlab.ca>2010-05-22 02:36:56 -0400
committerGrant Likely <grant.likely@secretlab.ca>2010-05-22 02:36:56 -0400
commitcf9b59e9d3e008591d1f54830f570982bb307a0d (patch)
tree113478ce8fd8c832ba726ffdf59b82cb46356476 /drivers/net/vmxnet3/vmxnet3_drv.c
parent44504b2bebf8b5823c59484e73096a7d6574471d (diff)
parentf4b87dee923342505e1ddba8d34ce9de33e75050 (diff)
Merge remote branch 'origin' into secretlab/next-devicetree
Merging in current state of Linus' tree to deal with merge conflicts and build failures in vio.c after merge. Conflicts: drivers/i2c/busses/i2c-cpm.c drivers/i2c/busses/i2c-mpc.c drivers/net/gianfar.c Also fixed up one line in arch/powerpc/kernel/vio.c to use the correct node pointer. Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'drivers/net/vmxnet3/vmxnet3_drv.c')
-rw-r--r--drivers/net/vmxnet3/vmxnet3_drv.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/drivers/net/vmxnet3/vmxnet3_drv.c b/drivers/net/vmxnet3/vmxnet3_drv.c
index cff3485d9673..989b742551ac 100644
--- a/drivers/net/vmxnet3/vmxnet3_drv.c
+++ b/drivers/net/vmxnet3/vmxnet3_drv.c
@@ -992,7 +992,6 @@ vmxnet3_tq_xmit(struct sk_buff *skb, struct vmxnet3_tx_queue *tq,
992 VMXNET3_WRITE_BAR0_REG(adapter, VMXNET3_REG_TXPROD, 992 VMXNET3_WRITE_BAR0_REG(adapter, VMXNET3_REG_TXPROD,
993 tq->tx_ring.next2fill); 993 tq->tx_ring.next2fill);
994 } 994 }
995 netdev->trans_start = jiffies;
996 995
997 return NETDEV_TX_OK; 996 return NETDEV_TX_OK;
998 997
@@ -1174,7 +1173,6 @@ vmxnet3_rq_rx_complete(struct vmxnet3_rx_queue *rq,
1174 netif_receive_skb(skb); 1173 netif_receive_skb(skb);
1175 } 1174 }
1176 1175
1177 adapter->netdev->last_rx = jiffies;
1178 ctx->skb = NULL; 1176 ctx->skb = NULL;
1179 } 1177 }
1180 1178
@@ -1371,13 +1369,12 @@ vmxnet3_rq_create(struct vmxnet3_rx_queue *rq, struct vmxnet3_adapter *adapter)
1371 1369
1372 sz = sizeof(struct vmxnet3_rx_buf_info) * (rq->rx_ring[0].size + 1370 sz = sizeof(struct vmxnet3_rx_buf_info) * (rq->rx_ring[0].size +
1373 rq->rx_ring[1].size); 1371 rq->rx_ring[1].size);
1374 bi = kmalloc(sz, GFP_KERNEL); 1372 bi = kzalloc(sz, GFP_KERNEL);
1375 if (!bi) { 1373 if (!bi) {
1376 printk(KERN_ERR "%s: failed to allocate rx bufinfo\n", 1374 printk(KERN_ERR "%s: failed to allocate rx bufinfo\n",
1377 adapter->netdev->name); 1375 adapter->netdev->name);
1378 goto err; 1376 goto err;
1379 } 1377 }
1380 memset(bi, 0, sz);
1381 rq->buf_info[0] = bi; 1378 rq->buf_info[0] = bi;
1382 rq->buf_info[1] = bi + rq->rx_ring[0].size; 1379 rq->buf_info[1] = bi + rq->rx_ring[0].size;
1383 1380
@@ -1675,11 +1672,11 @@ vmxnet3_copy_mc(struct net_device *netdev)
1675 /* We may be called with BH disabled */ 1672 /* We may be called with BH disabled */
1676 buf = kmalloc(sz, GFP_ATOMIC); 1673 buf = kmalloc(sz, GFP_ATOMIC);
1677 if (buf) { 1674 if (buf) {
1678 struct dev_mc_list *mc; 1675 struct netdev_hw_addr *ha;
1679 int i = 0; 1676 int i = 0;
1680 1677
1681 netdev_for_each_mc_addr(mc, netdev) 1678 netdev_for_each_mc_addr(ha, netdev)
1682 memcpy(buf + i++ * ETH_ALEN, mc->dmi_addr, 1679 memcpy(buf + i++ * ETH_ALEN, ha->addr,
1683 ETH_ALEN); 1680 ETH_ALEN);
1684 } 1681 }
1685 } 1682 }