On 04/17/2018 05:33 PM, David Ahern wrote: > Most FIB entries can be added using memory allocated with GFP_KERNEL. > Add gfp_flags to ip6_route_add and addrconf_dst_alloc. Code paths that > can be reached from the packet path (e.g., ndisc and autoconfig) or > atomic notifiers use GFP_ATOMIC; paths from user context (adding > addresses and routes) use GFP_KERNEL. > > Signed-off-by: David Ahern <dsah...@gmail.com> > ---
Hmmm.... ipv6_ifa_notify() calls __ipv6_ifa_notify() under rcu_read_lock_bh()/rcu_read_unlock_bh() So using GFP_KERNEL in __ipv6_ifa_notify() is certainly not allowed.