diff options
author | stephen hemminger <shemminger@vyatta.com> | 2012-09-24 14:12:25 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-09-27 18:12:37 -0400 |
commit | b0558ef24a792906914fcad277f3befe2420e618 (patch) | |
tree | 65cacc7cfe54fd50aef515fdbfa52f2aaf532efb /net/ipv6 | |
parent | 0c5794a66c7c6443759e6098841767958a031187 (diff) |
xfrm: remove extranous rcu_read_lock
The handlers for xfrm_tunnel are always invoked with rcu read lock
already.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
-rw-r--r-- | net/ipv6/sit.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c index 3bd1bfc01f85..3ed54ffd8d50 100644 --- a/net/ipv6/sit.c +++ b/net/ipv6/sit.c | |||
@@ -545,7 +545,6 @@ static int ipip6_err(struct sk_buff *skb, u32 info) | |||
545 | 545 | ||
546 | err = -ENOENT; | 546 | err = -ENOENT; |
547 | 547 | ||
548 | rcu_read_lock(); | ||
549 | t = ipip6_tunnel_lookup(dev_net(skb->dev), | 548 | t = ipip6_tunnel_lookup(dev_net(skb->dev), |
550 | skb->dev, | 549 | skb->dev, |
551 | iph->daddr, | 550 | iph->daddr, |
@@ -579,7 +578,6 @@ static int ipip6_err(struct sk_buff *skb, u32 info) | |||
579 | t->err_count = 1; | 578 | t->err_count = 1; |
580 | t->err_time = jiffies; | 579 | t->err_time = jiffies; |
581 | out: | 580 | out: |
582 | rcu_read_unlock(); | ||
583 | return err; | 581 | return err; |
584 | } | 582 | } |
585 | 583 | ||
@@ -599,7 +597,6 @@ static int ipip6_rcv(struct sk_buff *skb) | |||
599 | 597 | ||
600 | iph = ip_hdr(skb); | 598 | iph = ip_hdr(skb); |
601 | 599 | ||
602 | rcu_read_lock(); | ||
603 | tunnel = ipip6_tunnel_lookup(dev_net(skb->dev), skb->dev, | 600 | tunnel = ipip6_tunnel_lookup(dev_net(skb->dev), skb->dev, |
604 | iph->saddr, iph->daddr); | 601 | iph->saddr, iph->daddr); |
605 | if (tunnel != NULL) { | 602 | if (tunnel != NULL) { |
@@ -615,7 +612,6 @@ static int ipip6_rcv(struct sk_buff *skb) | |||
615 | if ((tunnel->dev->priv_flags & IFF_ISATAP) && | 612 | if ((tunnel->dev->priv_flags & IFF_ISATAP) && |
616 | !isatap_chksrc(skb, iph, tunnel)) { | 613 | !isatap_chksrc(skb, iph, tunnel)) { |
617 | tunnel->dev->stats.rx_errors++; | 614 | tunnel->dev->stats.rx_errors++; |
618 | rcu_read_unlock(); | ||
619 | kfree_skb(skb); | 615 | kfree_skb(skb); |
620 | return 0; | 616 | return 0; |
621 | } | 617 | } |
@@ -630,12 +626,10 @@ static int ipip6_rcv(struct sk_buff *skb) | |||
630 | 626 | ||
631 | netif_rx(skb); | 627 | netif_rx(skb); |
632 | 628 | ||
633 | rcu_read_unlock(); | ||
634 | return 0; | 629 | return 0; |
635 | } | 630 | } |
636 | 631 | ||
637 | /* no tunnel matched, let upstream know, ipsec may handle it */ | 632 | /* no tunnel matched, let upstream know, ipsec may handle it */ |
638 | rcu_read_unlock(); | ||
639 | return 1; | 633 | return 1; |
640 | out: | 634 | out: |
641 | kfree_skb(skb); | 635 | kfree_skb(skb); |