diff options
Diffstat (limited to 'drivers/net/macb.c')
-rw-r--r-- | drivers/net/macb.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/net/macb.c b/drivers/net/macb.c index 2e9571bf0736..0e04f7ac3f2e 100644 --- a/drivers/net/macb.c +++ b/drivers/net/macb.c | |||
@@ -357,7 +357,6 @@ static int macb_rx_frame(struct macb *bp, unsigned int first_frag, | |||
357 | } | 357 | } |
358 | 358 | ||
359 | skb_reserve(skb, RX_OFFSET); | 359 | skb_reserve(skb, RX_OFFSET); |
360 | skb->dev = bp->dev; | ||
361 | skb->ip_summed = CHECKSUM_NONE; | 360 | skb->ip_summed = CHECKSUM_NONE; |
362 | skb_put(skb, len); | 361 | skb_put(skb, len); |
363 | 362 | ||
@@ -368,9 +367,10 @@ static int macb_rx_frame(struct macb *bp, unsigned int first_frag, | |||
368 | BUG_ON(frag != last_frag); | 367 | BUG_ON(frag != last_frag); |
369 | frag_len = len - offset; | 368 | frag_len = len - offset; |
370 | } | 369 | } |
371 | memcpy(skb->data + offset, | 370 | skb_copy_to_linear_data_offset(skb, offset, |
372 | bp->rx_buffers + (RX_BUFFER_SIZE * frag), | 371 | (bp->rx_buffers + |
373 | frag_len); | 372 | (RX_BUFFER_SIZE * frag)), |
373 | frag_len); | ||
374 | offset += RX_BUFFER_SIZE; | 374 | offset += RX_BUFFER_SIZE; |
375 | bp->rx_ring[frag].addr &= ~MACB_BIT(RX_USED); | 375 | bp->rx_ring[frag].addr &= ~MACB_BIT(RX_USED); |
376 | wmb(); | 376 | wmb(); |
@@ -576,7 +576,8 @@ static int macb_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
576 | int i; | 576 | int i; |
577 | dev_dbg(&bp->pdev->dev, | 577 | dev_dbg(&bp->pdev->dev, |
578 | "start_xmit: len %u head %p data %p tail %p end %p\n", | 578 | "start_xmit: len %u head %p data %p tail %p end %p\n", |
579 | skb->len, skb->head, skb->data, skb->tail, skb->end); | 579 | skb->len, skb->head, skb->data, |
580 | skb_tail_pointer(skb), skb_end_pointer(skb)); | ||
580 | dev_dbg(&bp->pdev->dev, | 581 | dev_dbg(&bp->pdev->dev, |
581 | "data:"); | 582 | "data:"); |
582 | for (i = 0; i < 16; i++) | 583 | for (i = 0; i < 16; i++) |