diff options
Diffstat (limited to 'net/wireless')
-rw-r--r-- | net/wireless/wext.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/wireless/wext.c b/net/wireless/wext.c index 47e80cc2077..db03ed5ce05 100644 --- a/net/wireless/wext.c +++ b/net/wireless/wext.c | |||
@@ -1137,7 +1137,7 @@ static void wireless_nlevent_process(unsigned long data) | |||
1137 | struct sk_buff *skb; | 1137 | struct sk_buff *skb; |
1138 | 1138 | ||
1139 | while ((skb = skb_dequeue(&wireless_nlevent_queue))) | 1139 | while ((skb = skb_dequeue(&wireless_nlevent_queue))) |
1140 | rtnl_notify(skb, 0, RTNLGRP_LINK, NULL, GFP_ATOMIC); | 1140 | rtnl_notify(skb, &init_net, 0, RTNLGRP_LINK, NULL, GFP_ATOMIC); |
1141 | } | 1141 | } |
1142 | 1142 | ||
1143 | static DECLARE_TASKLET(wireless_nlevent_tasklet, wireless_nlevent_process, 0); | 1143 | static DECLARE_TASKLET(wireless_nlevent_tasklet, wireless_nlevent_process, 0); |
@@ -1189,6 +1189,9 @@ static void rtmsg_iwinfo(struct net_device *dev, char *event, int event_len) | |||
1189 | struct sk_buff *skb; | 1189 | struct sk_buff *skb; |
1190 | int err; | 1190 | int err; |
1191 | 1191 | ||
1192 | if (dev->nd_net != &init_net) | ||
1193 | return; | ||
1194 | |||
1192 | skb = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_ATOMIC); | 1195 | skb = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_ATOMIC); |
1193 | if (!skb) | 1196 | if (!skb) |
1194 | return; | 1197 | return; |