diff options
Diffstat (limited to 'drivers/net/sgiseeq.c')
-rw-r--r-- | drivers/net/sgiseeq.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/sgiseeq.c b/drivers/net/sgiseeq.c index 52ed522a234c..d8c9c5d66d4f 100644 --- a/drivers/net/sgiseeq.c +++ b/drivers/net/sgiseeq.c | |||
@@ -318,7 +318,6 @@ static inline void sgiseeq_rx(struct net_device *dev, struct sgiseeq_private *sp | |||
318 | skb = dev_alloc_skb(len + 2); | 318 | skb = dev_alloc_skb(len + 2); |
319 | 319 | ||
320 | if (skb) { | 320 | if (skb) { |
321 | skb->dev = dev; | ||
322 | skb_reserve(skb, 2); | 321 | skb_reserve(skb, 2); |
323 | skb_put(skb, len); | 322 | skb_put(skb, len); |
324 | 323 | ||
@@ -535,7 +534,7 @@ static int sgiseeq_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
535 | * entry and the HPC got to the end of the chain before we | 534 | * entry and the HPC got to the end of the chain before we |
536 | * added this new entry and restarted it. | 535 | * added this new entry and restarted it. |
537 | */ | 536 | */ |
538 | memcpy((char *)(long)td->buf_vaddr, skb->data, skblen); | 537 | skb_copy_from_linear_data(skb, (char *)(long)td->buf_vaddr, skblen); |
539 | if (len != skblen) | 538 | if (len != skblen) |
540 | memset((char *)(long)td->buf_vaddr + skb->len, 0, len-skblen); | 539 | memset((char *)(long)td->buf_vaddr + skb->len, 0, len-skblen); |
541 | td->tdma.cntinfo = (len & HPCDMA_BCNT) | | 540 | td->tdma.cntinfo = (len & HPCDMA_BCNT) | |