X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=net%2Fcore%2Fsock.c;h=f3a0d08cbb48389c67d36bafcf49fce1c0ace1ab;hb=2a9f0ba7a976bc2b1bcf9156c1e57ffbc8f8fb64;hp=ac4f0e79226bd7c796ceb69931ccb4bdfaa5b570;hpb=354ade9058687fdef8a612c7b298d4c51dae3da7;p=mv-sheeva.git diff --git a/net/core/sock.c b/net/core/sock.c index ac4f0e79226..f3a0d08cbb4 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