path: root/net/ipv6/anycast.c
diff options
authorDavid Ahern <dsahern@gmail.com>2018-04-17 17:33:22 -0700
committerDavid S. Miller <davem@davemloft.net>2018-04-17 23:41:17 -0400
commitacb54e3cba404c20f07733f3222c0418a7724a5b (patch)
tree015cc63067a3cf9788317f597b1cd88601bd0d67 /net/ipv6/anycast.c
parentnet/ipv6: Create a neigh_lookup for FIB entries (diff)
net/ipv6: Add gfp_flags to route add functions
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 <dsahern@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/anycast.c')
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/anycast.c b/net/ipv6/anycast.c
index 1122fb299b86..e456386fe4d5 100644
--- a/net/ipv6/anycast.c
+++ b/net/ipv6/anycast.c
@@ -267,7 +267,7 @@ int __ipv6_dev_ac_inc(struct inet6_dev *idev, const struct in6_addr *addr)
net = dev_net(idev->dev);
- rt = addrconf_dst_alloc(net, idev, addr, true);
+ rt = addrconf_dst_alloc(net, idev, addr, true, GFP_ATOMIC);
if (IS_ERR(rt)) {
err = PTR_ERR(rt);
goto out;