diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c index e9422fe45179363ef1d7a1c5c406a6d058f61e29..acb7b86574cd3d6f13790550c00f11616caff2e3 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c @@ -2911,7 +2911,7 @@ static int packet_snd(struct socket *sock, struct msghdr *msg, size_t len) if (unlikely(offset < 0)) goto out_free; } else if (reserve) { - skb_push(skb, reserve); + skb_reserve(skb, -reserve); } /* Returns -EFAULT on error */