|
@@ -1499,10 +1499,11 @@ retry:
|
|
|
|
|
|
if (!skb) {
|
|
|
size_t reserved = LL_RESERVED_SPACE(dev);
|
|
|
+ int tlen = dev->needed_tailroom;
|
|
|
unsigned int hhlen = dev->header_ops ? dev->hard_header_len : 0;
|
|
|
|
|
|
rcu_read_unlock();
|
|
|
- skb = sock_wmalloc(sk, len + reserved, 0, GFP_KERNEL);
|
|
|
+ skb = sock_wmalloc(sk, len + reserved + tlen, 0, GFP_KERNEL);
|
|
|
if (skb == NULL)
|
|
|
return -ENOBUFS;
|
|
|
/* FIXME: Save some space for broken drivers that write a hard
|