2014-10-28 02:14:39 +08:00
|
|
|
--- a/drivers/net/ppp/pppoe.c
|
|
|
|
+++ b/drivers/net/ppp/pppoe.c
|
2015-12-23 19:15:02 +08:00
|
|
|
@@ -859,7 +859,7 @@ static int pppoe_sendmsg(struct kiocb *i
|
2014-10-28 02:14:39 +08:00
|
|
|
goto end;
|
|
|
|
|
|
|
|
|
|
|
|
- skb = sock_wmalloc(sk, total_len + dev->hard_header_len + 32,
|
|
|
|
+ skb = sock_wmalloc(sk, total_len + dev->hard_header_len + 32 + NET_SKB_PAD,
|
|
|
|
0, GFP_KERNEL);
|
|
|
|
if (!skb) {
|
|
|
|
error = -ENOMEM;
|
2015-12-23 19:15:02 +08:00
|
|
|
@@ -867,7 +867,7 @@ static int pppoe_sendmsg(struct kiocb *i
|
2014-10-28 02:14:39 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
/* Reserve space for headers. */
|
|
|
|
- skb_reserve(skb, dev->hard_header_len);
|
|
|
|
+ skb_reserve(skb, dev->hard_header_len + NET_SKB_PAD);
|
|
|
|
skb_reset_network_header(skb);
|
|
|
|
|
|
|
|
skb->dev = dev;
|