diff options
| author | Kuniyuki Iwashima <[email protected]> | 2023-07-10 21:35:11 +0000 |
|---|---|---|
| committer | Jakub Kicinski <[email protected]> | 2023-07-13 00:12:29 +0000 |
| commit | c5ec13e38af5527f69f647c46ce15ebaa6b35e6c (patch) | |
| tree | a58a8f832a3d34f8e1c62d1083c2943bd691c94c | |
| parent | Merge branch 'mlxsw-add-port-range-matching-support' (diff) | |
| download | kernel-c5ec13e38af5527f69f647c46ce15ebaa6b35e6c.tar.gz kernel-c5ec13e38af5527f69f647c46ce15ebaa6b35e6c.zip | |
ipv6: rpl: Remove redundant skb_dst_drop().
RPL code has a pattern where skb_dst_drop() is called before
ip6_route_input().
However, ip6_route_input() calls skb_dst_drop() internally,
so we need not call skb_dst_drop() before ip6_route_input().
Signed-off-by: Kuniyuki Iwashima <[email protected]>
Reviewed-by: Simon Horman <[email protected]>
Reviewed-by: David Ahern <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
| -rw-r--r-- | net/ipv6/exthdrs.c | 2 | ||||
| -rw-r--r-- | net/ipv6/rpl_iptunnel.c | 3 |
2 files changed, 1 insertions, 4 deletions
diff --git a/net/ipv6/exthdrs.c b/net/ipv6/exthdrs.c index 202fc3aaa83c..f4bfccae003c 100644 --- a/net/ipv6/exthdrs.c +++ b/net/ipv6/exthdrs.c @@ -612,8 +612,6 @@ looped_back: kfree(buf); - skb_dst_drop(skb); - ip6_route_input(skb); if (skb_dst(skb)->error) { diff --git a/net/ipv6/rpl_iptunnel.c b/net/ipv6/rpl_iptunnel.c index b1c028df686e..a013b92cbb86 100644 --- a/net/ipv6/rpl_iptunnel.c +++ b/net/ipv6/rpl_iptunnel.c @@ -272,8 +272,6 @@ static int rpl_input(struct sk_buff *skb) dst = dst_cache_get(&rlwt->cache); preempt_enable(); - skb_dst_drop(skb); - if (!dst) { ip6_route_input(skb); dst = skb_dst(skb); @@ -284,6 +282,7 @@ static int rpl_input(struct sk_buff *skb) preempt_enable(); } } else { + skb_dst_drop(skb); skb_dst_set(skb, dst); } |
