aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/ipv4/route.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/net/ipv4/route.c b/net/ipv4/route.c
index 7864d0c48968..3888f6ba0a5c 100644
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -2396,12 +2396,10 @@ static int __mkroute_output(struct rtable **result,
2396 2396
2397 2397
2398 rth = dst_alloc(&ipv4_dst_ops); 2398 rth = dst_alloc(&ipv4_dst_ops);
2399 if (!rth) { 2399 if (!rth)
2400 rcu_read_unlock();
2401 return -ENOBUFS; 2400 return -ENOBUFS;
2402 } 2401
2403 in_dev_hold(in_dev); 2402 in_dev_hold(in_dev);
2404 rcu_read_unlock();
2405 rth->idev = in_dev; 2403 rth->idev = in_dev;
2406 2404
2407 atomic_set(&rth->dst.__refcnt, 1); 2405 atomic_set(&rth->dst.__refcnt, 1);