aboutsummaryrefslogtreecommitdiff
path: root/net/xfrm/xfrm_input.c
diff options
context:
space:
mode:
authorAlex Shi <alex.shi@linaro.org>2016-04-21 12:06:25 +0800
committerAlex Shi <alex.shi@linaro.org>2016-04-21 12:06:25 +0800
commit2bf7955152a0544342fcaed28930748cc68392ae (patch)
treed6900b5e4330d173b94fac3cbe2188eba2673771 /net/xfrm/xfrm_input.c
parentad592b70ae97800d4f5bf535d45a680649e2789e (diff)
parent8c9aef03d3b540b6885e7534a885ea25f62dd9ed (diff)
Merge tag 'v4.4.8' into linux-linaro-lsk-v4.4lsk-v4.4-16.04
This is the 4.4.8 stable release
Diffstat (limited to 'net/xfrm/xfrm_input.c')
-rw-r--r--net/xfrm/xfrm_input.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/xfrm/xfrm_input.c b/net/xfrm/xfrm_input.c
index ad7f5b3f9b61..1c4ad477ce93 100644
--- a/net/xfrm/xfrm_input.c
+++ b/net/xfrm/xfrm_input.c
@@ -292,12 +292,15 @@ int xfrm_input(struct sk_buff *skb, int nexthdr, __be32 spi, int encap_type)
XFRM_SKB_CB(skb)->seq.input.hi = seq_hi;
skb_dst_force(skb);
+ dev_hold(skb->dev);
nexthdr = x->type->input(x, skb);
if (nexthdr == -EINPROGRESS)
return 0;
resume:
+ dev_put(skb->dev);
+
spin_lock(&x->lock);
if (nexthdr <= 0) {
if (nexthdr == -EBADMSG) {