On 2/15/19 10:15 AM, Paolo Abeni wrote:
> rt6_cache_allowed_for_pmtu() checks for rt->from presence, but
> it does not access the RCU protected pointer. We can use
> rcu_access_pointer() and clean-up the code a bit. No functional
> changes intended.
> 
> Signed-off-by: Paolo Abeni <pab...@redhat.com>
> ---
>  net/ipv6/route.c | 8 +-------
>  1 file changed, 1 insertion(+), 7 deletions(-)
> 
> diff --git a/net/ipv6/route.c b/net/ipv6/route.c
> index dc066fdf7e46..87a0561136dd 100644
> --- a/net/ipv6/route.c
> +++ b/net/ipv6/route.c
> @@ -2277,14 +2277,8 @@ static void rt6_do_update_pmtu(struct rt6_info *rt, 
> u32 mtu)
>  
>  static bool rt6_cache_allowed_for_pmtu(const struct rt6_info *rt)
>  {
> -     bool from_set;
> -
> -     rcu_read_lock();
> -     from_set = !!rcu_dereference(rt->from);
> -     rcu_read_unlock();
> -
>       return !(rt->rt6i_flags & RTF_CACHE) &&
> -             (rt->rt6i_flags & RTF_PCPU || from_set);
> +             (rt->rt6i_flags & RTF_PCPU || rcu_access_pointer(rt->from));
>  }
>  
>  static void __ip6_rt_update_pmtu(struct dst_entry *dst, const struct sock 
> *sk,
> 

good cleanup

Reviewed-by: David Ahern <dsah...@gmail.com>

Reply via email to