From: David S. Miller Date: Thu, 18 Dec 2008 06:11:38 +0000 (-0800) Subject: Revert "net: release skb->dst in sock_queue_rcv_skb()" X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=49ad9599d42da4787d5b3a19263440e0fcd4d1fc;p=linux-beck.git Revert "net: release skb->dst in sock_queue_rcv_skb()" This reverts commit 70355602879229c6f8bd694ec9c0814222bc4936. As pointed out by Mark McLoughlin IP_PKTINFO cmsg data is one post-queueing user, so this optimization is not valid right now. Signed-off-by: David S. Miller --- diff --git a/net/core/sock.c b/net/core/sock.c index ac4f0e79226b..f3a0d08cbb48 100644 --- a/net/core/sock.c +++ b/net/core/sock.c @@ -289,11 +289,7 @@ int sock_queue_rcv_skb(struct sock *sk, struct sk_buff *skb) skb->dev = NULL; skb_set_owner_r(skb, sk); - /* - * release dst right now while its hot - */ - dst_release(skb->dst); - skb->dst = NULL; + /* Cache the SKB length before we tack it onto the receive * queue. Once it is added it no longer belongs to us and * may be freed by other threads of control pulling packets