diff options
Diffstat (limited to 'drivers/net/pppoe.c')
-rw-r--r-- | drivers/net/pppoe.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/pppoe.c b/drivers/net/pppoe.c index e94790632d55..e9fb616ff663 100644 --- a/drivers/net/pppoe.c +++ b/drivers/net/pppoe.c | |||
@@ -869,7 +869,8 @@ static int __pppoe_xmit(struct sock *sk, struct sk_buff *skb) | |||
869 | goto abort; | 869 | goto abort; |
870 | 870 | ||
871 | skb_reserve(skb2, dev->hard_header_len + sizeof(struct pppoe_hdr)); | 871 | skb_reserve(skb2, dev->hard_header_len + sizeof(struct pppoe_hdr)); |
872 | memcpy(skb_put(skb2, skb->len), skb->data, skb->len); | 872 | skb_copy_from_linear_data(skb, skb_put(skb2, skb->len), |
873 | skb->len); | ||
873 | } else { | 874 | } else { |
874 | /* Make a clone so as to not disturb the original skb, | 875 | /* Make a clone so as to not disturb the original skb, |
875 | * give dev_queue_xmit something it can free. | 876 | * give dev_queue_xmit something it can free. |