compat-drivers: fix 0005-netlink-portid.patch
authorLuis R. Rodriguez <mcgrof@do-not-panic.com>
Wed, 13 Mar 2013 01:03:12 +0000 (18:03 -0700)
committerLuis R. Rodriguez <mcgrof@do-not-panic.com>
Wed, 13 Mar 2013 01:03:12 +0000 (18:03 -0700)
The nl80211_send_wiphy() routine expects a dev
argument first now, so the first two hunks
required manual adjustments.

Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
patches/collateral-evolutions/network/0005-netlink-portid.patch

index 85efcd8d0c68d6e7c995d1cfee0e8750e66a3091..1eaceb25471aef1c22d413d861f72ebaf63d2761 100644 (file)
@@ -66,25 +66,25 @@ this one should other drivers / subsystem need this change.
                wmediumd_portid = 0;
 --- a/net/wireless/nl80211.c
 +++ b/net/wireless/nl80211.c
-@@ -1317,7 +1317,7 @@ static int nl80211_dump_wiphy(struct sk_
-                       continue;
-               if (++idx <= start)
-                       continue;
--              ret = nl80211_send_wiphy(skb, NETLINK_CB(cb->skb).portid,
-+              ret = nl80211_send_wiphy(skb, NETLINK_CB_PORTID(skb),
-                                        cb->nlh->nlmsg_seq, NLM_F_MULTI,
-                                        dev);
-               if (ret < 0) {
-@@ -1360,7 +1360,7 @@ static int nl80211_get_wiphy(struct sk_b
+@@ -1593,7 +1593,7 @@ static int nl80211_dump_wiphy(struct sk_
+               /* attempt to fit multiple wiphy data chunks into the skb */
+               do {
+                       ret = nl80211_send_wiphy(dev, skb,
+-                                               NETLINK_CB(cb->skb).portid,
++                                               NETLINK_CB_PORTID(cb->skb),
+                                                cb->nlh->nlmsg_seq,
+                                                NLM_F_MULTI,
+                                                split, &cb->args[1],
+@@ -1642,7 +1642,7 @@ static int nl80211_get_wiphy(struct sk_b
        if (!msg)
                return -ENOMEM;
  
--      if (nl80211_send_wiphy(msg, info->snd_portid, info->snd_seq, 0, dev) < 0) {
-+      if (nl80211_send_wiphy(msg, genl_info_snd_portid(info), info->snd_seq, 0, dev) < 0) {
+-      if (nl80211_send_wiphy(dev, msg, info->snd_portid, info->snd_seq, 0,
++      if (nl80211_send_wiphy(dev, msg, genl_info_snd_portid(info), info->snd_seq, 0,
+                              false, NULL, NULL, NULL) < 0) {
                nlmsg_free(msg);
                return -ENOBUFS;
-       }
-@@ -1939,7 +1939,7 @@ static int nl80211_dump_interface(struct
+@@ -2222,7 +2222,7 @@ static int nl80211_dump_interface(struct
                                if_idx++;
                                continue;
                        }
@@ -93,7 +93,7 @@ this one should other drivers / subsystem need this change.
                                               cb->nlh->nlmsg_seq, NLM_F_MULTI,
                                               rdev, wdev) < 0) {
                                mutex_unlock(&rdev->devlist_mtx);
-@@ -1970,7 +1970,7 @@ static int nl80211_get_interface(struct
+@@ -2253,7 +2253,7 @@ static int nl80211_get_interface(struct
        if (!msg)
                return -ENOMEM;
  
@@ -102,7 +102,7 @@ this one should other drivers / subsystem need this change.
                               dev, wdev) < 0) {
                nlmsg_free(msg);
                return -ENOBUFS;
-@@ -2195,7 +2195,7 @@ static int nl80211_new_interface(struct
+@@ -2478,7 +2478,7 @@ static int nl80211_new_interface(struct
                break;
        }
  
@@ -111,7 +111,7 @@ this one should other drivers / subsystem need this change.
                               rdev, wdev) < 0) {
                nlmsg_free(msg);
                return -ENOBUFS;
-@@ -2330,7 +2330,7 @@ static int nl80211_get_key(struct sk_buf
+@@ -2613,7 +2613,7 @@ static int nl80211_get_key(struct sk_buf
        if (!msg)
                return -ENOMEM;
  
@@ -120,7 +120,7 @@ this one should other drivers / subsystem need this change.
                             NL80211_CMD_NEW_KEY);
        if (IS_ERR(hdr))
                return PTR_ERR(hdr);
-@@ -3265,7 +3265,7 @@ static int nl80211_dump_station(struct s
+@@ -3549,7 +3549,7 @@ static int nl80211_dump_station(struct s
                        goto out_err;
  
                if (nl80211_send_station(skb,
@@ -129,7 +129,7 @@ this one should other drivers / subsystem need this change.
                                cb->nlh->nlmsg_seq, NLM_F_MULTI,
                                dev, netdev, mac_addr,
                                &sinfo) < 0)
-@@ -3311,7 +3311,7 @@ static int nl80211_get_station(struct sk
+@@ -3595,7 +3595,7 @@ static int nl80211_get_station(struct sk
        if (!msg)
                return -ENOMEM;
  
@@ -138,7 +138,7 @@ this one should other drivers / subsystem need this change.
                                 rdev, dev, mac_addr, &sinfo) < 0) {
                nlmsg_free(msg);
                return -ENOBUFS;
-@@ -3857,7 +3857,7 @@ static int nl80211_dump_mpath(struct sk_
+@@ -4195,7 +4195,7 @@ static int nl80211_dump_mpath(struct sk_
                if (err)
                        goto out_err;
  
@@ -147,7 +147,7 @@ this one should other drivers / subsystem need this change.
                                       cb->nlh->nlmsg_seq, NLM_F_MULTI,
                                       netdev, dst, next_hop,
                                       &pinfo) < 0)
-@@ -3906,7 +3906,7 @@ static int nl80211_get_mpath(struct sk_b
+@@ -4244,7 +4244,7 @@ static int nl80211_get_mpath(struct sk_b
        if (!msg)
                return -ENOMEM;
  
@@ -156,7 +156,7 @@ this one should other drivers / subsystem need this change.
                                 dev, dst, next_hop, &pinfo) < 0) {
                nlmsg_free(msg);
                return -ENOBUFS;
-@@ -4170,7 +4170,7 @@ static int nl80211_get_mesh_config(struc
+@@ -4508,7 +4508,7 @@ static int nl80211_get_mesh_config(struc
        msg = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_KERNEL);
        if (!msg)
                return -ENOMEM;
@@ -165,7 +165,7 @@ this one should other drivers / subsystem need this change.
                             NL80211_CMD_GET_MESH_CONFIG);
        if (!hdr)
                goto out;
-@@ -4512,7 +4512,7 @@ static int nl80211_get_reg(struct sk_buf
+@@ -4858,7 +4858,7 @@ static int nl80211_get_reg(struct sk_buf
                goto out;
        }
  
@@ -174,7 +174,7 @@ this one should other drivers / subsystem need this change.
                             NL80211_CMD_GET_REG);
        if (!hdr)
                goto put_failure;
-@@ -5199,7 +5199,7 @@ static int nl80211_send_bss(struct sk_bu
+@@ -5545,7 +5545,7 @@ static int nl80211_send_bss(struct sk_bu
  
        ASSERT_WDEV_LOCK(wdev);
  
@@ -183,7 +183,7 @@ this one should other drivers / subsystem need this change.
                             NL80211_CMD_NEW_SCAN_RESULTS);
        if (!hdr)
                return -1;
-@@ -5430,7 +5430,7 @@ static int nl80211_dump_survey(struct sk
+@@ -5776,7 +5776,7 @@ static int nl80211_dump_survey(struct sk
                }
  
                if (nl80211_send_survey(skb,
@@ -192,7 +192,7 @@ this one should other drivers / subsystem need this change.
                                cb->nlh->nlmsg_seq, NLM_F_MULTI,
                                netdev,
                                &survey) < 0)
-@@ -6076,7 +6076,7 @@ static int nl80211_testmode_dump(struct
+@@ -6435,7 +6435,7 @@ static int nl80211_testmode_dump(struct
        }
  
        while (1) {
@@ -201,7 +201,7 @@ this one should other drivers / subsystem need this change.
                                           cb->nlh->nlmsg_seq, NLM_F_MULTI,
                                           NL80211_CMD_TESTMODE);
                struct nlattr *tmdata;
-@@ -6155,7 +6155,7 @@ struct sk_buff *cfg80211_testmode_alloc_
+@@ -6514,7 +6514,7 @@ struct sk_buff *cfg80211_testmode_alloc_
                return NULL;
  
        return __cfg80211_testmode_alloc_skb(rdev, approxlen,
@@ -210,7 +210,7 @@ this one should other drivers / subsystem need this change.
                                rdev->testmode_info->snd_seq,
                                GFP_KERNEL);
  }
-@@ -6497,7 +6497,7 @@ static int nl80211_remain_on_channel(str
+@@ -6874,7 +6874,7 @@ static int nl80211_remain_on_channel(str
        if (!msg)
                return -ENOMEM;
  
@@ -219,7 +219,7 @@ this one should other drivers / subsystem need this change.
                             NL80211_CMD_REMAIN_ON_CHANNEL);
  
        if (IS_ERR(hdr)) {
-@@ -6716,7 +6716,7 @@ static int nl80211_register_mgmt(struct
+@@ -7093,7 +7093,7 @@ static int nl80211_register_mgmt(struct
        if (!rdev->ops->mgmt_tx)
                return -EOPNOTSUPP;
  
@@ -228,7 +228,7 @@ this one should other drivers / subsystem need this change.
                        nla_data(info->attrs[NL80211_ATTR_FRAME_MATCH]),
                        nla_len(info->attrs[NL80211_ATTR_FRAME_MATCH]));
  }
-@@ -6786,7 +6786,7 @@ static int nl80211_tx_mgmt(struct sk_buf
+@@ -7163,7 +7163,7 @@ static int nl80211_tx_mgmt(struct sk_buf
                if (!msg)
                        return -ENOMEM;
  
@@ -237,7 +237,7 @@ this one should other drivers / subsystem need this change.
                                     NL80211_CMD_FRAME);
  
                if (IS_ERR(hdr)) {
-@@ -6901,7 +6901,7 @@ static int nl80211_get_power_save(struct
+@@ -7278,7 +7278,7 @@ static int nl80211_get_power_save(struct
        if (!msg)
                return -ENOMEM;
  
@@ -246,7 +246,7 @@ this one should other drivers / subsystem need this change.
                             NL80211_CMD_GET_POWER_SAVE);
        if (!hdr) {
                err = -ENOBUFS;
-@@ -7190,7 +7190,7 @@ static int nl80211_get_wowlan(struct sk_
+@@ -7570,7 +7570,7 @@ static int nl80211_get_wowlan(struct sk_
        if (!msg)
                return -ENOMEM;
  
@@ -255,7 +255,7 @@ this one should other drivers / subsystem need this change.
                             NL80211_CMD_GET_WOWLAN);
        if (!hdr)
                goto nla_put_failure;
-@@ -7613,7 +7613,7 @@ static int nl80211_register_unexpected_f
+@@ -7994,7 +7994,7 @@ static int nl80211_register_unexpected_f
        if (wdev->ap_unexpected_nlportid)
                return -EBUSY;
  
@@ -264,7 +264,7 @@ this one should other drivers / subsystem need this change.
        return 0;
  }
  
-@@ -7643,7 +7643,7 @@ static int nl80211_probe_client(struct s
+@@ -8024,7 +8024,7 @@ static int nl80211_probe_client(struct s
        if (!msg)
                return -ENOMEM;
  
@@ -273,7 +273,7 @@ this one should other drivers / subsystem need this change.
                             NL80211_CMD_PROBE_CLIENT);
  
        if (IS_ERR(hdr)) {
-@@ -7687,13 +7687,13 @@ static int nl80211_register_beacons(stru
+@@ -8068,13 +8068,13 @@ static int nl80211_register_beacons(stru
        /* First, check if already registered. */
        spin_lock_bh(&rdev->beacon_registrations_lock);
        list_for_each_entry(reg, &rdev->beacon_registrations, list) {
@@ -289,7 +289,7 @@ this one should other drivers / subsystem need this change.
        list_add(&nreg->list, &rdev->beacon_registrations);
  
        spin_unlock_bh(&rdev->beacon_registrations_lock);
-@@ -9996,12 +9996,12 @@ static int nl80211_netlink_notify(struct
+@@ -10563,12 +10563,12 @@ static int nl80211_netlink_notify(struct
  
        list_for_each_entry_rcu(rdev, &cfg80211_rdev_list, list) {
                list_for_each_entry_rcu(wdev, &rdev->wdev_list, list)