]> git.baikalelectronics.ru Git - kernel.git/commit
net/ipv6: Fix missing rcu dereferences on from
authorDavid Ahern <dsahern@gmail.com>
Mon, 23 Apr 2018 18:32:07 +0000 (11:32 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 23 Apr 2018 20:12:55 +0000 (16:12 -0400)
commitc3b7c8ff71a7f8a56caf0fac1b3676cf99ccb133
treea25f9508243656db0d31f15c1dde671845ba23e1
parent8d710a4fe6822a1b28ec9d48bb93647753c077ba
net/ipv6: Fix missing rcu dereferences on from

kbuild test robot reported 2 uses of rt->from not properly accessed
using rcu_dereference:
1. add rcu_dereference_protected to rt6_remove_exception_rt and make
   sure it is always called with rcu lock held.

2. change rt6_do_redirect to take a reference on 'from' when accessed
   the first time so it can be used the sceond time outside of the lock

Fixes: ec7b3e64852f ("net/ipv6: Make from in rt6_info rcu protected")
Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/route.c