]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
net: check for refcount if pop a stacked dst_entry
authorSteffen Klassert <steffen.klassert@secunet.com>
Fri, 4 Jun 2010 01:57:38 +0000 (01:57 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 4 Jun 2010 22:56:00 +0000 (15:56 -0700)
commit8764ab2ca7ab5055e1ca80f9cfa4970c34acb804
treeca0a6ea6c6fabbb98220f5b700981f7f23855f42
parent4f4aeb7fd0f7e6ca008bb2147ba36cee13876595
net: check for refcount if pop a stacked dst_entry

xfrm triggers a warning if dst_pop() drops a refcount
on a noref dst. This patch changes dst_pop() to
skb_dst_pop(). skb_dst_pop() drops the refcnt only
on a refcounted dst. Also we don't clone the child
dst_entry, so it is not refcounted and we can use
skb_dst_set_noref() in xfrm_output_one().

Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/dst.h
net/xfrm/xfrm_output.c