aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
Diffstat (limited to 'net')
-rw-r--r--net/netfilter/nfnetlink.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/net/netfilter/nfnetlink.c b/net/netfilter/nfnetlink.c
index 11d504d0ac72..bf23e489e4cd 100644
--- a/net/netfilter/nfnetlink.c
+++ b/net/netfilter/nfnetlink.c
@@ -197,13 +197,12 @@ EXPORT_SYMBOL_GPL(nfnetlink_has_listeners);
197 197
198int nfnetlink_send(struct sk_buff *skb, u32 pid, unsigned group, int echo) 198int nfnetlink_send(struct sk_buff *skb, u32 pid, unsigned group, int echo)
199{ 199{
200 gfp_t allocation = in_interrupt() ? GFP_ATOMIC : GFP_KERNEL;
201 int err = 0; 200 int err = 0;
202 201
203 NETLINK_CB(skb).dst_group = group; 202 NETLINK_CB(skb).dst_group = group;
204 if (echo) 203 if (echo)
205 atomic_inc(&skb->users); 204 atomic_inc(&skb->users);
206 netlink_broadcast(nfnl, skb, pid, group, allocation); 205 netlink_broadcast(nfnl, skb, pid, group, gfp_any());
207 if (echo) 206 if (echo)
208 err = netlink_unicast(nfnl, skb, pid, MSG_DONTWAIT); 207 err = netlink_unicast(nfnl, skb, pid, MSG_DONTWAIT);
209 208