diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/core/drop_monitor.c | 3 | ||||
-rw-r--r-- | net/hsr/hsr_netlink.c | 6 | ||||
-rw-r--r-- | net/ieee802154/netlink.c | 2 | ||||
-rw-r--r-- | net/netlink/genetlink.c | 12 | ||||
-rw-r--r-- | net/nfc/netlink.c | 39 | ||||
-rw-r--r-- | net/openvswitch/datapath.c | 35 | ||||
-rw-r--r-- | net/openvswitch/datapath.h | 1 | ||||
-rw-r--r-- | net/openvswitch/dp_notify.c | 5 | ||||
-rw-r--r-- | net/wimax/op-msg.c | 3 | ||||
-rw-r--r-- | net/wimax/stack.c | 3 | ||||
-rw-r--r-- | net/wireless/nl80211.c | 70 |
11 files changed, 105 insertions, 74 deletions
diff --git a/net/core/drop_monitor.c b/net/core/drop_monitor.c index 46ee488c0015..1eab1dc48821 100644 --- a/net/core/drop_monitor.c +++ b/net/core/drop_monitor.c | |||
@@ -120,7 +120,8 @@ static void send_dm_alert(struct work_struct *work) | |||
120 | skb = reset_per_cpu_data(data); | 120 | skb = reset_per_cpu_data(data); |
121 | 121 | ||
122 | if (skb) | 122 | if (skb) |
123 | genlmsg_multicast(skb, 0, dm_mcgrp.id, GFP_KERNEL); | 123 | genlmsg_multicast(&net_drop_monitor_family, skb, 0, |
124 | dm_mcgrp.id, GFP_KERNEL); | ||
124 | } | 125 | } |
125 | 126 | ||
126 | /* | 127 | /* |
diff --git a/net/hsr/hsr_netlink.c b/net/hsr/hsr_netlink.c index 908e335dcdc9..0009416c08c2 100644 --- a/net/hsr/hsr_netlink.c +++ b/net/hsr/hsr_netlink.c | |||
@@ -129,7 +129,8 @@ void hsr_nl_ringerror(struct hsr_priv *hsr_priv, unsigned char addr[ETH_ALEN], | |||
129 | goto nla_put_failure; | 129 | goto nla_put_failure; |
130 | 130 | ||
131 | genlmsg_end(skb, msg_head); | 131 | genlmsg_end(skb, msg_head); |
132 | genlmsg_multicast(skb, 0, hsr_network_genl_mcgrp.id, GFP_ATOMIC); | 132 | genlmsg_multicast(&hsr_genl_family, skb, 0, |
133 | hsr_network_genl_mcgrp.id, GFP_ATOMIC); | ||
133 | 134 | ||
134 | return; | 135 | return; |
135 | 136 | ||
@@ -163,7 +164,8 @@ void hsr_nl_nodedown(struct hsr_priv *hsr_priv, unsigned char addr[ETH_ALEN]) | |||
163 | goto nla_put_failure; | 164 | goto nla_put_failure; |
164 | 165 | ||
165 | genlmsg_end(skb, msg_head); | 166 | genlmsg_end(skb, msg_head); |
166 | genlmsg_multicast(skb, 0, hsr_network_genl_mcgrp.id, GFP_ATOMIC); | 167 | genlmsg_multicast(&hsr_genl_family, skb, 0, |
168 | hsr_network_genl_mcgrp.id, GFP_ATOMIC); | ||
167 | 169 | ||
168 | return; | 170 | return; |
169 | 171 | ||
diff --git a/net/ieee802154/netlink.c b/net/ieee802154/netlink.c index 1a81709a4717..5172f467a383 100644 --- a/net/ieee802154/netlink.c +++ b/net/ieee802154/netlink.c | |||
@@ -70,7 +70,7 @@ int ieee802154_nl_mcast(struct sk_buff *msg, unsigned int group) | |||
70 | if (genlmsg_end(msg, hdr) < 0) | 70 | if (genlmsg_end(msg, hdr) < 0) |
71 | goto out; | 71 | goto out; |
72 | 72 | ||
73 | return genlmsg_multicast(msg, 0, group, GFP_ATOMIC); | 73 | return genlmsg_multicast(&nl802154_family, msg, 0, group, GFP_ATOMIC); |
74 | out: | 74 | out: |
75 | nlmsg_free(msg); | 75 | nlmsg_free(msg); |
76 | return -ENOBUFS; | 76 | return -ENOBUFS; |
diff --git a/net/netlink/genetlink.c b/net/netlink/genetlink.c index e9ef640200b4..36e3a86cacf6 100644 --- a/net/netlink/genetlink.c +++ b/net/netlink/genetlink.c | |||
@@ -883,11 +883,12 @@ static int genl_ctrl_event(int event, struct genl_family *family, | |||
883 | return PTR_ERR(msg); | 883 | return PTR_ERR(msg); |
884 | 884 | ||
885 | if (!family->netnsok) { | 885 | if (!family->netnsok) { |
886 | genlmsg_multicast_netns(&init_net, msg, 0, | 886 | genlmsg_multicast_netns(&genl_ctrl, &init_net, msg, 0, |
887 | GENL_ID_CTRL, GFP_KERNEL); | 887 | GENL_ID_CTRL, GFP_KERNEL); |
888 | } else { | 888 | } else { |
889 | rcu_read_lock(); | 889 | rcu_read_lock(); |
890 | genlmsg_multicast_allns(msg, 0, GENL_ID_CTRL, GFP_ATOMIC); | 890 | genlmsg_multicast_allns(&genl_ctrl, msg, 0, |
891 | GENL_ID_CTRL, GFP_ATOMIC); | ||
891 | rcu_read_unlock(); | 892 | rcu_read_unlock(); |
892 | } | 893 | } |
893 | 894 | ||
@@ -993,14 +994,15 @@ static int genlmsg_mcast(struct sk_buff *skb, u32 portid, unsigned long group, | |||
993 | return err; | 994 | return err; |
994 | } | 995 | } |
995 | 996 | ||
996 | int genlmsg_multicast_allns(struct sk_buff *skb, u32 portid, unsigned int group, | 997 | int genlmsg_multicast_allns(struct genl_family *family, struct sk_buff *skb, |
997 | gfp_t flags) | 998 | u32 portid, unsigned int group, gfp_t flags) |
998 | { | 999 | { |
999 | return genlmsg_mcast(skb, portid, group, flags); | 1000 | return genlmsg_mcast(skb, portid, group, flags); |
1000 | } | 1001 | } |
1001 | EXPORT_SYMBOL(genlmsg_multicast_allns); | 1002 | EXPORT_SYMBOL(genlmsg_multicast_allns); |
1002 | 1003 | ||
1003 | void genl_notify(struct sk_buff *skb, struct net *net, u32 portid, u32 group, | 1004 | void genl_notify(struct genl_family *family, |
1005 | struct sk_buff *skb, struct net *net, u32 portid, u32 group, | ||
1004 | struct nlmsghdr *nlh, gfp_t flags) | 1006 | struct nlmsghdr *nlh, gfp_t flags) |
1005 | { | 1007 | { |
1006 | struct sock *sk = net->genl_sock; | 1008 | struct sock *sk = net->genl_sock; |
diff --git a/net/nfc/netlink.c b/net/nfc/netlink.c index fe6760d328a0..3092df313fb1 100644 --- a/net/nfc/netlink.c +++ b/net/nfc/netlink.c | |||
@@ -194,7 +194,8 @@ int nfc_genl_targets_found(struct nfc_dev *dev) | |||
194 | 194 | ||
195 | genlmsg_end(msg, hdr); | 195 | genlmsg_end(msg, hdr); |
196 | 196 | ||
197 | return genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_ATOMIC); | 197 | return genlmsg_multicast(&nfc_genl_family, msg, 0, |
198 | nfc_genl_event_mcgrp.id, GFP_ATOMIC); | ||
198 | 199 | ||
199 | nla_put_failure: | 200 | nla_put_failure: |
200 | genlmsg_cancel(msg, hdr); | 201 | genlmsg_cancel(msg, hdr); |
@@ -223,7 +224,8 @@ int nfc_genl_target_lost(struct nfc_dev *dev, u32 target_idx) | |||
223 | 224 | ||
224 | genlmsg_end(msg, hdr); | 225 | genlmsg_end(msg, hdr); |
225 | 226 | ||
226 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_KERNEL); | 227 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
228 | nfc_genl_event_mcgrp.id, GFP_KERNEL); | ||
227 | 229 | ||
228 | return 0; | 230 | return 0; |
229 | 231 | ||
@@ -255,7 +257,8 @@ int nfc_genl_tm_activated(struct nfc_dev *dev, u32 protocol) | |||
255 | 257 | ||
256 | genlmsg_end(msg, hdr); | 258 | genlmsg_end(msg, hdr); |
257 | 259 | ||
258 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_KERNEL); | 260 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
261 | nfc_genl_event_mcgrp.id, GFP_KERNEL); | ||
259 | 262 | ||
260 | return 0; | 263 | return 0; |
261 | 264 | ||
@@ -285,7 +288,8 @@ int nfc_genl_tm_deactivated(struct nfc_dev *dev) | |||
285 | 288 | ||
286 | genlmsg_end(msg, hdr); | 289 | genlmsg_end(msg, hdr); |
287 | 290 | ||
288 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_KERNEL); | 291 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
292 | nfc_genl_event_mcgrp.id, GFP_KERNEL); | ||
289 | 293 | ||
290 | return 0; | 294 | return 0; |
291 | 295 | ||
@@ -318,7 +322,8 @@ int nfc_genl_device_added(struct nfc_dev *dev) | |||
318 | 322 | ||
319 | genlmsg_end(msg, hdr); | 323 | genlmsg_end(msg, hdr); |
320 | 324 | ||
321 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_KERNEL); | 325 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
326 | nfc_genl_event_mcgrp.id, GFP_KERNEL); | ||
322 | 327 | ||
323 | return 0; | 328 | return 0; |
324 | 329 | ||
@@ -348,7 +353,8 @@ int nfc_genl_device_removed(struct nfc_dev *dev) | |||
348 | 353 | ||
349 | genlmsg_end(msg, hdr); | 354 | genlmsg_end(msg, hdr); |
350 | 355 | ||
351 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_KERNEL); | 356 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
357 | nfc_genl_event_mcgrp.id, GFP_KERNEL); | ||
352 | 358 | ||
353 | return 0; | 359 | return 0; |
354 | 360 | ||
@@ -414,7 +420,8 @@ int nfc_genl_llc_send_sdres(struct nfc_dev *dev, struct hlist_head *sdres_list) | |||
414 | 420 | ||
415 | genlmsg_end(msg, hdr); | 421 | genlmsg_end(msg, hdr); |
416 | 422 | ||
417 | return genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_ATOMIC); | 423 | return genlmsg_multicast(&nfc_genl_family, msg, 0, |
424 | nfc_genl_event_mcgrp.id, GFP_ATOMIC); | ||
418 | 425 | ||
419 | nla_put_failure: | 426 | nla_put_failure: |
420 | genlmsg_cancel(msg, hdr); | 427 | genlmsg_cancel(msg, hdr); |
@@ -448,7 +455,8 @@ int nfc_genl_se_added(struct nfc_dev *dev, u32 se_idx, u16 type) | |||
448 | 455 | ||
449 | genlmsg_end(msg, hdr); | 456 | genlmsg_end(msg, hdr); |
450 | 457 | ||
451 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_KERNEL); | 458 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
459 | nfc_genl_event_mcgrp.id, GFP_KERNEL); | ||
452 | 460 | ||
453 | return 0; | 461 | return 0; |
454 | 462 | ||
@@ -479,7 +487,8 @@ int nfc_genl_se_removed(struct nfc_dev *dev, u32 se_idx) | |||
479 | 487 | ||
480 | genlmsg_end(msg, hdr); | 488 | genlmsg_end(msg, hdr); |
481 | 489 | ||
482 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_KERNEL); | 490 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
491 | nfc_genl_event_mcgrp.id, GFP_KERNEL); | ||
483 | 492 | ||
484 | return 0; | 493 | return 0; |
485 | 494 | ||
@@ -600,7 +609,8 @@ int nfc_genl_dep_link_up_event(struct nfc_dev *dev, u32 target_idx, | |||
600 | 609 | ||
601 | dev->dep_link_up = true; | 610 | dev->dep_link_up = true; |
602 | 611 | ||
603 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_ATOMIC); | 612 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
613 | nfc_genl_event_mcgrp.id, GFP_ATOMIC); | ||
604 | 614 | ||
605 | return 0; | 615 | return 0; |
606 | 616 | ||
@@ -632,7 +642,8 @@ int nfc_genl_dep_link_down_event(struct nfc_dev *dev) | |||
632 | 642 | ||
633 | genlmsg_end(msg, hdr); | 643 | genlmsg_end(msg, hdr); |
634 | 644 | ||
635 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_ATOMIC); | 645 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
646 | nfc_genl_event_mcgrp.id, GFP_ATOMIC); | ||
636 | 647 | ||
637 | return 0; | 648 | return 0; |
638 | 649 | ||
@@ -1137,7 +1148,8 @@ int nfc_genl_fw_download_done(struct nfc_dev *dev, const char *firmware_name, | |||
1137 | 1148 | ||
1138 | genlmsg_end(msg, hdr); | 1149 | genlmsg_end(msg, hdr); |
1139 | 1150 | ||
1140 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_KERNEL); | 1151 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
1152 | nfc_genl_event_mcgrp.id, GFP_KERNEL); | ||
1141 | 1153 | ||
1142 | return 0; | 1154 | return 0; |
1143 | 1155 | ||
@@ -1308,7 +1320,8 @@ static void se_io_cb(void *context, u8 *apdu, size_t apdu_len, int err) | |||
1308 | 1320 | ||
1309 | genlmsg_end(msg, hdr); | 1321 | genlmsg_end(msg, hdr); |
1310 | 1322 | ||
1311 | genlmsg_multicast(msg, 0, nfc_genl_event_mcgrp.id, GFP_KERNEL); | 1323 | genlmsg_multicast(&nfc_genl_family, msg, 0, |
1324 | nfc_genl_event_mcgrp.id, GFP_KERNEL); | ||
1312 | 1325 | ||
1313 | kfree(ctx); | 1326 | kfree(ctx); |
1314 | 1327 | ||
diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c index 3e2bb15fd717..5c19846b1d2a 100644 --- a/net/openvswitch/datapath.c +++ b/net/openvswitch/datapath.c | |||
@@ -61,10 +61,11 @@ | |||
61 | 61 | ||
62 | int ovs_net_id __read_mostly; | 62 | int ovs_net_id __read_mostly; |
63 | 63 | ||
64 | static void ovs_notify(struct sk_buff *skb, struct genl_info *info, | 64 | static void ovs_notify(struct genl_family *family, |
65 | struct sk_buff *skb, struct genl_info *info, | ||
65 | struct genl_multicast_group *grp) | 66 | struct genl_multicast_group *grp) |
66 | { | 67 | { |
67 | genl_notify(skb, genl_info_net(info), info->snd_portid, | 68 | genl_notify(family, skb, genl_info_net(info), info->snd_portid, |
68 | grp->id, info->nlhdr, GFP_KERNEL); | 69 | grp->id, info->nlhdr, GFP_KERNEL); |
69 | } | 70 | } |
70 | 71 | ||
@@ -877,9 +878,10 @@ static int ovs_flow_cmd_new_or_set(struct sk_buff *skb, struct genl_info *info) | |||
877 | ovs_unlock(); | 878 | ovs_unlock(); |
878 | 879 | ||
879 | if (!IS_ERR(reply)) | 880 | if (!IS_ERR(reply)) |
880 | ovs_notify(reply, info, &ovs_dp_flow_multicast_group); | 881 | ovs_notify(&dp_flow_genl_family, reply, info, |
882 | &ovs_dp_flow_multicast_group); | ||
881 | else | 883 | else |
882 | genl_set_err(sock_net(skb->sk), 0, | 884 | genl_set_err(&dp_flow_genl_family, sock_net(skb->sk), 0, |
883 | ovs_dp_flow_multicast_group.id, PTR_ERR(reply)); | 885 | ovs_dp_flow_multicast_group.id, PTR_ERR(reply)); |
884 | return 0; | 886 | return 0; |
885 | 887 | ||
@@ -990,7 +992,8 @@ static int ovs_flow_cmd_del(struct sk_buff *skb, struct genl_info *info) | |||
990 | ovs_flow_free(flow, true); | 992 | ovs_flow_free(flow, true); |
991 | ovs_unlock(); | 993 | ovs_unlock(); |
992 | 994 | ||
993 | ovs_notify(reply, info, &ovs_dp_flow_multicast_group); | 995 | ovs_notify(&dp_flow_genl_family, reply, info, |
996 | &ovs_dp_flow_multicast_group); | ||
994 | return 0; | 997 | return 0; |
995 | unlock: | 998 | unlock: |
996 | ovs_unlock(); | 999 | ovs_unlock(); |
@@ -1237,7 +1240,8 @@ static int ovs_dp_cmd_new(struct sk_buff *skb, struct genl_info *info) | |||
1237 | 1240 | ||
1238 | ovs_unlock(); | 1241 | ovs_unlock(); |
1239 | 1242 | ||
1240 | ovs_notify(reply, info, &ovs_dp_datapath_multicast_group); | 1243 | ovs_notify(&dp_datapath_genl_family, reply, info, |
1244 | &ovs_dp_datapath_multicast_group); | ||
1241 | return 0; | 1245 | return 0; |
1242 | 1246 | ||
1243 | err_destroy_local_port: | 1247 | err_destroy_local_port: |
@@ -1302,7 +1306,8 @@ static int ovs_dp_cmd_del(struct sk_buff *skb, struct genl_info *info) | |||
1302 | __dp_destroy(dp); | 1306 | __dp_destroy(dp); |
1303 | ovs_unlock(); | 1307 | ovs_unlock(); |
1304 | 1308 | ||
1305 | ovs_notify(reply, info, &ovs_dp_datapath_multicast_group); | 1309 | ovs_notify(&dp_datapath_genl_family, reply, info, |
1310 | &ovs_dp_datapath_multicast_group); | ||
1306 | 1311 | ||
1307 | return 0; | 1312 | return 0; |
1308 | unlock: | 1313 | unlock: |
@@ -1326,14 +1331,15 @@ static int ovs_dp_cmd_set(struct sk_buff *skb, struct genl_info *info) | |||
1326 | info->snd_seq, OVS_DP_CMD_NEW); | 1331 | info->snd_seq, OVS_DP_CMD_NEW); |
1327 | if (IS_ERR(reply)) { | 1332 | if (IS_ERR(reply)) { |
1328 | err = PTR_ERR(reply); | 1333 | err = PTR_ERR(reply); |
1329 | genl_set_err(sock_net(skb->sk), 0, | 1334 | genl_set_err(&dp_datapath_genl_family, sock_net(skb->sk), 0, |
1330 | ovs_dp_datapath_multicast_group.id, err); | 1335 | ovs_dp_datapath_multicast_group.id, err); |
1331 | err = 0; | 1336 | err = 0; |
1332 | goto unlock; | 1337 | goto unlock; |
1333 | } | 1338 | } |
1334 | 1339 | ||
1335 | ovs_unlock(); | 1340 | ovs_unlock(); |
1336 | ovs_notify(reply, info, &ovs_dp_datapath_multicast_group); | 1341 | ovs_notify(&dp_datapath_genl_family, reply, info, |
1342 | &ovs_dp_datapath_multicast_group); | ||
1337 | 1343 | ||
1338 | return 0; | 1344 | return 0; |
1339 | unlock: | 1345 | unlock: |
@@ -1425,7 +1431,7 @@ static const struct nla_policy vport_policy[OVS_VPORT_ATTR_MAX + 1] = { | |||
1425 | [OVS_VPORT_ATTR_OPTIONS] = { .type = NLA_NESTED }, | 1431 | [OVS_VPORT_ATTR_OPTIONS] = { .type = NLA_NESTED }, |
1426 | }; | 1432 | }; |
1427 | 1433 | ||
1428 | static struct genl_family dp_vport_genl_family = { | 1434 | struct genl_family dp_vport_genl_family = { |
1429 | .id = GENL_ID_GENERATE, | 1435 | .id = GENL_ID_GENERATE, |
1430 | .hdrsize = sizeof(struct ovs_header), | 1436 | .hdrsize = sizeof(struct ovs_header), |
1431 | .name = OVS_VPORT_FAMILY, | 1437 | .name = OVS_VPORT_FAMILY, |
@@ -1595,7 +1601,8 @@ static int ovs_vport_cmd_new(struct sk_buff *skb, struct genl_info *info) | |||
1595 | goto exit_unlock; | 1601 | goto exit_unlock; |
1596 | } | 1602 | } |
1597 | 1603 | ||
1598 | ovs_notify(reply, info, &ovs_dp_vport_multicast_group); | 1604 | ovs_notify(&dp_vport_genl_family, reply, info, |
1605 | &ovs_dp_vport_multicast_group); | ||
1599 | 1606 | ||
1600 | exit_unlock: | 1607 | exit_unlock: |
1601 | ovs_unlock(); | 1608 | ovs_unlock(); |
@@ -1642,7 +1649,8 @@ static int ovs_vport_cmd_set(struct sk_buff *skb, struct genl_info *info) | |||
1642 | BUG_ON(err < 0); | 1649 | BUG_ON(err < 0); |
1643 | 1650 | ||
1644 | ovs_unlock(); | 1651 | ovs_unlock(); |
1645 | ovs_notify(reply, info, &ovs_dp_vport_multicast_group); | 1652 | ovs_notify(&dp_vport_genl_family, reply, info, |
1653 | &ovs_dp_vport_multicast_group); | ||
1646 | return 0; | 1654 | return 0; |
1647 | 1655 | ||
1648 | exit_free: | 1656 | exit_free: |
@@ -1679,7 +1687,8 @@ static int ovs_vport_cmd_del(struct sk_buff *skb, struct genl_info *info) | |||
1679 | err = 0; | 1687 | err = 0; |
1680 | ovs_dp_detach_port(vport); | 1688 | ovs_dp_detach_port(vport); |
1681 | 1689 | ||
1682 | ovs_notify(reply, info, &ovs_dp_vport_multicast_group); | 1690 | ovs_notify(&dp_vport_genl_family, reply, info, |
1691 | &ovs_dp_vport_multicast_group); | ||
1683 | 1692 | ||
1684 | exit_unlock: | 1693 | exit_unlock: |
1685 | ovs_unlock(); | 1694 | ovs_unlock(); |
diff --git a/net/openvswitch/datapath.h b/net/openvswitch/datapath.h index d3d14a58aa91..4067ea41be28 100644 --- a/net/openvswitch/datapath.h +++ b/net/openvswitch/datapath.h | |||
@@ -177,6 +177,7 @@ static inline struct vport *ovs_vport_ovsl(const struct datapath *dp, int port_n | |||
177 | } | 177 | } |
178 | 178 | ||
179 | extern struct notifier_block ovs_dp_device_notifier; | 179 | extern struct notifier_block ovs_dp_device_notifier; |
180 | extern struct genl_family dp_vport_genl_family; | ||
180 | extern struct genl_multicast_group ovs_dp_vport_multicast_group; | 181 | extern struct genl_multicast_group ovs_dp_vport_multicast_group; |
181 | 182 | ||
182 | void ovs_dp_process_received_packet(struct vport *, struct sk_buff *); | 183 | void ovs_dp_process_received_packet(struct vport *, struct sk_buff *); |
diff --git a/net/openvswitch/dp_notify.c b/net/openvswitch/dp_notify.c index 3d55ead6095c..f4b66c84ea0b 100644 --- a/net/openvswitch/dp_notify.c +++ b/net/openvswitch/dp_notify.c | |||
@@ -34,13 +34,14 @@ static void dp_detach_port_notify(struct vport *vport) | |||
34 | OVS_VPORT_CMD_DEL); | 34 | OVS_VPORT_CMD_DEL); |
35 | ovs_dp_detach_port(vport); | 35 | ovs_dp_detach_port(vport); |
36 | if (IS_ERR(notify)) { | 36 | if (IS_ERR(notify)) { |
37 | genl_set_err(ovs_dp_get_net(dp), 0, | 37 | genl_set_err(&dp_vport_genl_family, ovs_dp_get_net(dp), 0, |
38 | ovs_dp_vport_multicast_group.id, | 38 | ovs_dp_vport_multicast_group.id, |
39 | PTR_ERR(notify)); | 39 | PTR_ERR(notify)); |
40 | return; | 40 | return; |
41 | } | 41 | } |
42 | 42 | ||
43 | genlmsg_multicast_netns(ovs_dp_get_net(dp), notify, 0, | 43 | genlmsg_multicast_netns(&dp_vport_genl_family, |
44 | ovs_dp_get_net(dp), notify, 0, | ||
44 | ovs_dp_vport_multicast_group.id, | 45 | ovs_dp_vport_multicast_group.id, |
45 | GFP_KERNEL); | 46 | GFP_KERNEL); |
46 | } | 47 | } |
diff --git a/net/wimax/op-msg.c b/net/wimax/op-msg.c index ff19cbeaf607..f37dd3c5576d 100644 --- a/net/wimax/op-msg.c +++ b/net/wimax/op-msg.c | |||
@@ -279,7 +279,8 @@ int wimax_msg_send(struct wimax_dev *wimax_dev, struct sk_buff *skb) | |||
279 | 279 | ||
280 | d_printf(1, dev, "CTX: wimax msg, %zu bytes\n", size); | 280 | d_printf(1, dev, "CTX: wimax msg, %zu bytes\n", size); |
281 | d_dump(2, dev, msg, size); | 281 | d_dump(2, dev, msg, size); |
282 | genlmsg_multicast(skb, 0, wimax_gnl_mcg.id, GFP_KERNEL); | 282 | genlmsg_multicast(&wimax_gnl_family, skb, 0, |
283 | wimax_gnl_mcg.id, GFP_KERNEL); | ||
283 | d_printf(1, dev, "CTX: genl multicast done\n"); | 284 | d_printf(1, dev, "CTX: genl multicast done\n"); |
284 | return 0; | 285 | return 0; |
285 | } | 286 | } |
diff --git a/net/wimax/stack.c b/net/wimax/stack.c index 6328afe90319..18888748e699 100644 --- a/net/wimax/stack.c +++ b/net/wimax/stack.c | |||
@@ -177,7 +177,8 @@ int wimax_gnl_re_state_change_send( | |||
177 | goto out; | 177 | goto out; |
178 | } | 178 | } |
179 | genlmsg_end(report_skb, header); | 179 | genlmsg_end(report_skb, header); |
180 | genlmsg_multicast(report_skb, 0, wimax_gnl_mcg.id, GFP_KERNEL); | 180 | genlmsg_multicast(&wimax_gnl_family, report_skb, 0, |
181 | wimax_gnl_mcg.id, GFP_KERNEL); | ||
181 | out: | 182 | out: |
182 | d_fnend(3, dev, "(wimax_dev %p report_skb %p) = %d\n", | 183 | d_fnend(3, dev, "(wimax_dev %p report_skb %p) = %d\n", |
183 | wimax_dev, report_skb, result); | 184 | wimax_dev, report_skb, result); |
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c index 1b6c5dd4dccf..f20edfd2e1f0 100644 --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c | |||
@@ -6868,7 +6868,7 @@ void cfg80211_testmode_event(struct sk_buff *skb, gfp_t gfp) | |||
6868 | 6868 | ||
6869 | nla_nest_end(skb, data); | 6869 | nla_nest_end(skb, data); |
6870 | genlmsg_end(skb, hdr); | 6870 | genlmsg_end(skb, hdr); |
6871 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), skb, 0, | 6871 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), skb, 0, |
6872 | nl80211_testmode_mcgrp.id, gfp); | 6872 | nl80211_testmode_mcgrp.id, gfp); |
6873 | } | 6873 | } |
6874 | EXPORT_SYMBOL(cfg80211_testmode_event); | 6874 | EXPORT_SYMBOL(cfg80211_testmode_event); |
@@ -9597,7 +9597,7 @@ void nl80211_notify_dev_rename(struct cfg80211_registered_device *rdev) | |||
9597 | return; | 9597 | return; |
9598 | } | 9598 | } |
9599 | 9599 | ||
9600 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 9600 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
9601 | nl80211_config_mcgrp.id, GFP_KERNEL); | 9601 | nl80211_config_mcgrp.id, GFP_KERNEL); |
9602 | } | 9602 | } |
9603 | 9603 | ||
@@ -9707,7 +9707,7 @@ void nl80211_send_scan_start(struct cfg80211_registered_device *rdev, | |||
9707 | return; | 9707 | return; |
9708 | } | 9708 | } |
9709 | 9709 | ||
9710 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 9710 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
9711 | nl80211_scan_mcgrp.id, GFP_KERNEL); | 9711 | nl80211_scan_mcgrp.id, GFP_KERNEL); |
9712 | } | 9712 | } |
9713 | 9713 | ||
@@ -9726,7 +9726,7 @@ void nl80211_send_scan_done(struct cfg80211_registered_device *rdev, | |||
9726 | return; | 9726 | return; |
9727 | } | 9727 | } |
9728 | 9728 | ||
9729 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 9729 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
9730 | nl80211_scan_mcgrp.id, GFP_KERNEL); | 9730 | nl80211_scan_mcgrp.id, GFP_KERNEL); |
9731 | } | 9731 | } |
9732 | 9732 | ||
@@ -9745,7 +9745,7 @@ void nl80211_send_scan_aborted(struct cfg80211_registered_device *rdev, | |||
9745 | return; | 9745 | return; |
9746 | } | 9746 | } |
9747 | 9747 | ||
9748 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 9748 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
9749 | nl80211_scan_mcgrp.id, GFP_KERNEL); | 9749 | nl80211_scan_mcgrp.id, GFP_KERNEL); |
9750 | } | 9750 | } |
9751 | 9751 | ||
@@ -9764,7 +9764,7 @@ void nl80211_send_sched_scan_results(struct cfg80211_registered_device *rdev, | |||
9764 | return; | 9764 | return; |
9765 | } | 9765 | } |
9766 | 9766 | ||
9767 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 9767 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
9768 | nl80211_scan_mcgrp.id, GFP_KERNEL); | 9768 | nl80211_scan_mcgrp.id, GFP_KERNEL); |
9769 | } | 9769 | } |
9770 | 9770 | ||
@@ -9782,7 +9782,7 @@ void nl80211_send_sched_scan(struct cfg80211_registered_device *rdev, | |||
9782 | return; | 9782 | return; |
9783 | } | 9783 | } |
9784 | 9784 | ||
9785 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 9785 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
9786 | nl80211_scan_mcgrp.id, GFP_KERNEL); | 9786 | nl80211_scan_mcgrp.id, GFP_KERNEL); |
9787 | } | 9787 | } |
9788 | 9788 | ||
@@ -9837,8 +9837,8 @@ void nl80211_send_reg_change_event(struct regulatory_request *request) | |||
9837 | genlmsg_end(msg, hdr); | 9837 | genlmsg_end(msg, hdr); |
9838 | 9838 | ||
9839 | rcu_read_lock(); | 9839 | rcu_read_lock(); |
9840 | genlmsg_multicast_allns(msg, 0, nl80211_regulatory_mcgrp.id, | 9840 | genlmsg_multicast_allns(&nl80211_fam, msg, 0, |
9841 | GFP_ATOMIC); | 9841 | nl80211_regulatory_mcgrp.id, GFP_ATOMIC); |
9842 | rcu_read_unlock(); | 9842 | rcu_read_unlock(); |
9843 | 9843 | ||
9844 | return; | 9844 | return; |
@@ -9873,7 +9873,7 @@ static void nl80211_send_mlme_event(struct cfg80211_registered_device *rdev, | |||
9873 | 9873 | ||
9874 | genlmsg_end(msg, hdr); | 9874 | genlmsg_end(msg, hdr); |
9875 | 9875 | ||
9876 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 9876 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
9877 | nl80211_mlme_mcgrp.id, gfp); | 9877 | nl80211_mlme_mcgrp.id, gfp); |
9878 | return; | 9878 | return; |
9879 | 9879 | ||
@@ -9961,7 +9961,7 @@ static void nl80211_send_mlme_timeout(struct cfg80211_registered_device *rdev, | |||
9961 | 9961 | ||
9962 | genlmsg_end(msg, hdr); | 9962 | genlmsg_end(msg, hdr); |
9963 | 9963 | ||
9964 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 9964 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
9965 | nl80211_mlme_mcgrp.id, gfp); | 9965 | nl80211_mlme_mcgrp.id, gfp); |
9966 | return; | 9966 | return; |
9967 | 9967 | ||
@@ -10017,7 +10017,7 @@ void nl80211_send_connect_result(struct cfg80211_registered_device *rdev, | |||
10017 | 10017 | ||
10018 | genlmsg_end(msg, hdr); | 10018 | genlmsg_end(msg, hdr); |
10019 | 10019 | ||
10020 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10020 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10021 | nl80211_mlme_mcgrp.id, gfp); | 10021 | nl80211_mlme_mcgrp.id, gfp); |
10022 | return; | 10022 | return; |
10023 | 10023 | ||
@@ -10056,7 +10056,7 @@ void nl80211_send_roamed(struct cfg80211_registered_device *rdev, | |||
10056 | 10056 | ||
10057 | genlmsg_end(msg, hdr); | 10057 | genlmsg_end(msg, hdr); |
10058 | 10058 | ||
10059 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10059 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10060 | nl80211_mlme_mcgrp.id, gfp); | 10060 | nl80211_mlme_mcgrp.id, gfp); |
10061 | return; | 10061 | return; |
10062 | 10062 | ||
@@ -10094,7 +10094,7 @@ void nl80211_send_disconnected(struct cfg80211_registered_device *rdev, | |||
10094 | 10094 | ||
10095 | genlmsg_end(msg, hdr); | 10095 | genlmsg_end(msg, hdr); |
10096 | 10096 | ||
10097 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10097 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10098 | nl80211_mlme_mcgrp.id, GFP_KERNEL); | 10098 | nl80211_mlme_mcgrp.id, GFP_KERNEL); |
10099 | return; | 10099 | return; |
10100 | 10100 | ||
@@ -10128,7 +10128,7 @@ void nl80211_send_ibss_bssid(struct cfg80211_registered_device *rdev, | |||
10128 | 10128 | ||
10129 | genlmsg_end(msg, hdr); | 10129 | genlmsg_end(msg, hdr); |
10130 | 10130 | ||
10131 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10131 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10132 | nl80211_mlme_mcgrp.id, gfp); | 10132 | nl80211_mlme_mcgrp.id, gfp); |
10133 | return; | 10133 | return; |
10134 | 10134 | ||
@@ -10169,7 +10169,7 @@ void cfg80211_notify_new_peer_candidate(struct net_device *dev, const u8 *addr, | |||
10169 | 10169 | ||
10170 | genlmsg_end(msg, hdr); | 10170 | genlmsg_end(msg, hdr); |
10171 | 10171 | ||
10172 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10172 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10173 | nl80211_mlme_mcgrp.id, gfp); | 10173 | nl80211_mlme_mcgrp.id, gfp); |
10174 | return; | 10174 | return; |
10175 | 10175 | ||
@@ -10208,7 +10208,7 @@ void nl80211_michael_mic_failure(struct cfg80211_registered_device *rdev, | |||
10208 | 10208 | ||
10209 | genlmsg_end(msg, hdr); | 10209 | genlmsg_end(msg, hdr); |
10210 | 10210 | ||
10211 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10211 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10212 | nl80211_mlme_mcgrp.id, gfp); | 10212 | nl80211_mlme_mcgrp.id, gfp); |
10213 | return; | 10213 | return; |
10214 | 10214 | ||
@@ -10261,8 +10261,8 @@ void nl80211_send_beacon_hint_event(struct wiphy *wiphy, | |||
10261 | genlmsg_end(msg, hdr); | 10261 | genlmsg_end(msg, hdr); |
10262 | 10262 | ||
10263 | rcu_read_lock(); | 10263 | rcu_read_lock(); |
10264 | genlmsg_multicast_allns(msg, 0, nl80211_regulatory_mcgrp.id, | 10264 | genlmsg_multicast_allns(&nl80211_fam, msg, 0, |
10265 | GFP_ATOMIC); | 10265 | nl80211_regulatory_mcgrp.id, GFP_ATOMIC); |
10266 | rcu_read_unlock(); | 10266 | rcu_read_unlock(); |
10267 | 10267 | ||
10268 | return; | 10268 | return; |
@@ -10307,7 +10307,7 @@ static void nl80211_send_remain_on_chan_event( | |||
10307 | 10307 | ||
10308 | genlmsg_end(msg, hdr); | 10308 | genlmsg_end(msg, hdr); |
10309 | 10309 | ||
10310 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10310 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10311 | nl80211_mlme_mcgrp.id, gfp); | 10311 | nl80211_mlme_mcgrp.id, gfp); |
10312 | return; | 10312 | return; |
10313 | 10313 | ||
@@ -10362,7 +10362,7 @@ void cfg80211_new_sta(struct net_device *dev, const u8 *mac_addr, | |||
10362 | return; | 10362 | return; |
10363 | } | 10363 | } |
10364 | 10364 | ||
10365 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10365 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10366 | nl80211_mlme_mcgrp.id, gfp); | 10366 | nl80211_mlme_mcgrp.id, gfp); |
10367 | } | 10367 | } |
10368 | EXPORT_SYMBOL(cfg80211_new_sta); | 10368 | EXPORT_SYMBOL(cfg80211_new_sta); |
@@ -10392,7 +10392,7 @@ void cfg80211_del_sta(struct net_device *dev, const u8 *mac_addr, gfp_t gfp) | |||
10392 | 10392 | ||
10393 | genlmsg_end(msg, hdr); | 10393 | genlmsg_end(msg, hdr); |
10394 | 10394 | ||
10395 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10395 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10396 | nl80211_mlme_mcgrp.id, gfp); | 10396 | nl80211_mlme_mcgrp.id, gfp); |
10397 | return; | 10397 | return; |
10398 | 10398 | ||
@@ -10428,7 +10428,7 @@ void cfg80211_conn_failed(struct net_device *dev, const u8 *mac_addr, | |||
10428 | 10428 | ||
10429 | genlmsg_end(msg, hdr); | 10429 | genlmsg_end(msg, hdr); |
10430 | 10430 | ||
10431 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10431 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10432 | nl80211_mlme_mcgrp.id, gfp); | 10432 | nl80211_mlme_mcgrp.id, gfp); |
10433 | return; | 10433 | return; |
10434 | 10434 | ||
@@ -10590,7 +10590,7 @@ void cfg80211_mgmt_tx_status(struct wireless_dev *wdev, u64 cookie, | |||
10590 | 10590 | ||
10591 | genlmsg_end(msg, hdr); | 10591 | genlmsg_end(msg, hdr); |
10592 | 10592 | ||
10593 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10593 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10594 | nl80211_mlme_mcgrp.id, gfp); | 10594 | nl80211_mlme_mcgrp.id, gfp); |
10595 | return; | 10595 | return; |
10596 | 10596 | ||
@@ -10639,7 +10639,7 @@ void cfg80211_cqm_rssi_notify(struct net_device *dev, | |||
10639 | 10639 | ||
10640 | genlmsg_end(msg, hdr); | 10640 | genlmsg_end(msg, hdr); |
10641 | 10641 | ||
10642 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10642 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10643 | nl80211_mlme_mcgrp.id, gfp); | 10643 | nl80211_mlme_mcgrp.id, gfp); |
10644 | return; | 10644 | return; |
10645 | 10645 | ||
@@ -10684,7 +10684,7 @@ static void nl80211_gtk_rekey_notify(struct cfg80211_registered_device *rdev, | |||
10684 | 10684 | ||
10685 | genlmsg_end(msg, hdr); | 10685 | genlmsg_end(msg, hdr); |
10686 | 10686 | ||
10687 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10687 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10688 | nl80211_mlme_mcgrp.id, gfp); | 10688 | nl80211_mlme_mcgrp.id, gfp); |
10689 | return; | 10689 | return; |
10690 | 10690 | ||
@@ -10742,7 +10742,7 @@ nl80211_pmksa_candidate_notify(struct cfg80211_registered_device *rdev, | |||
10742 | 10742 | ||
10743 | genlmsg_end(msg, hdr); | 10743 | genlmsg_end(msg, hdr); |
10744 | 10744 | ||
10745 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10745 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10746 | nl80211_mlme_mcgrp.id, gfp); | 10746 | nl80211_mlme_mcgrp.id, gfp); |
10747 | return; | 10747 | return; |
10748 | 10748 | ||
@@ -10789,7 +10789,7 @@ static void nl80211_ch_switch_notify(struct cfg80211_registered_device *rdev, | |||
10789 | 10789 | ||
10790 | genlmsg_end(msg, hdr); | 10790 | genlmsg_end(msg, hdr); |
10791 | 10791 | ||
10792 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10792 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10793 | nl80211_mlme_mcgrp.id, gfp); | 10793 | nl80211_mlme_mcgrp.id, gfp); |
10794 | return; | 10794 | return; |
10795 | 10795 | ||
@@ -10866,7 +10866,7 @@ void cfg80211_cqm_txe_notify(struct net_device *dev, | |||
10866 | 10866 | ||
10867 | genlmsg_end(msg, hdr); | 10867 | genlmsg_end(msg, hdr); |
10868 | 10868 | ||
10869 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10869 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10870 | nl80211_mlme_mcgrp.id, gfp); | 10870 | nl80211_mlme_mcgrp.id, gfp); |
10871 | return; | 10871 | return; |
10872 | 10872 | ||
@@ -10915,7 +10915,7 @@ nl80211_radar_notify(struct cfg80211_registered_device *rdev, | |||
10915 | 10915 | ||
10916 | genlmsg_end(msg, hdr); | 10916 | genlmsg_end(msg, hdr); |
10917 | 10917 | ||
10918 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10918 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10919 | nl80211_mlme_mcgrp.id, gfp); | 10919 | nl80211_mlme_mcgrp.id, gfp); |
10920 | return; | 10920 | return; |
10921 | 10921 | ||
@@ -10962,7 +10962,7 @@ void cfg80211_cqm_pktloss_notify(struct net_device *dev, | |||
10962 | 10962 | ||
10963 | genlmsg_end(msg, hdr); | 10963 | genlmsg_end(msg, hdr); |
10964 | 10964 | ||
10965 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 10965 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
10966 | nl80211_mlme_mcgrp.id, gfp); | 10966 | nl80211_mlme_mcgrp.id, gfp); |
10967 | return; | 10967 | return; |
10968 | 10968 | ||
@@ -11002,7 +11002,7 @@ void cfg80211_probe_status(struct net_device *dev, const u8 *addr, | |||
11002 | 11002 | ||
11003 | genlmsg_end(msg, hdr); | 11003 | genlmsg_end(msg, hdr); |
11004 | 11004 | ||
11005 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 11005 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
11006 | nl80211_mlme_mcgrp.id, gfp); | 11006 | nl80211_mlme_mcgrp.id, gfp); |
11007 | return; | 11007 | return; |
11008 | 11008 | ||
@@ -11154,7 +11154,7 @@ void cfg80211_report_wowlan_wakeup(struct wireless_dev *wdev, | |||
11154 | 11154 | ||
11155 | genlmsg_end(msg, hdr); | 11155 | genlmsg_end(msg, hdr); |
11156 | 11156 | ||
11157 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 11157 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
11158 | nl80211_mlme_mcgrp.id, gfp); | 11158 | nl80211_mlme_mcgrp.id, gfp); |
11159 | return; | 11159 | return; |
11160 | 11160 | ||
@@ -11196,7 +11196,7 @@ void cfg80211_tdls_oper_request(struct net_device *dev, const u8 *peer, | |||
11196 | 11196 | ||
11197 | genlmsg_end(msg, hdr); | 11197 | genlmsg_end(msg, hdr); |
11198 | 11198 | ||
11199 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 11199 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
11200 | nl80211_mlme_mcgrp.id, gfp); | 11200 | nl80211_mlme_mcgrp.id, gfp); |
11201 | return; | 11201 | return; |
11202 | 11202 | ||
@@ -11279,7 +11279,7 @@ void cfg80211_ft_event(struct net_device *netdev, | |||
11279 | 11279 | ||
11280 | genlmsg_end(msg, hdr); | 11280 | genlmsg_end(msg, hdr); |
11281 | 11281 | ||
11282 | genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), msg, 0, | 11282 | genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0, |
11283 | nl80211_mlme_mcgrp.id, GFP_KERNEL); | 11283 | nl80211_mlme_mcgrp.id, GFP_KERNEL); |
11284 | } | 11284 | } |
11285 | EXPORT_SYMBOL(cfg80211_ft_event); | 11285 | EXPORT_SYMBOL(cfg80211_ft_event); |