compat-drivers: refresh patches for next-20130326
authorLuis R. Rodriguez <mcgrof@do-not-panic.com>
Tue, 26 Mar 2013 23:21:57 +0000 (16:21 -0700)
committerLuis R. Rodriguez <mcgrof@do-not-panic.com>
Tue, 26 Mar 2013 23:21:57 +0000 (16:21 -0700)
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
22 files changed:
patches/collateral-evolutions/drm/04-revert-prime-support.patch
patches/collateral-evolutions/network/0001-netdev_ops.patch
patches/collateral-evolutions/network/0002-net-misc.patch
patches/collateral-evolutions/network/0003-netdev-needed_headroom_tailroom.patch
patches/collateral-evolutions/network/0005-netlink-portid.patch
patches/collateral-evolutions/network/04-netns.patch
patches/collateral-evolutions/network/09-cfg80211-wext-padding.patch
patches/collateral-evolutions/network/09-threaded-irq.patch
patches/collateral-evolutions/network/10-add-wext-handlers-to-netdev.patch
patches/collateral-evolutions/network/11-dev-pm-ops.patch
patches/collateral-evolutions/network/12-mac80211-disable-tx-status.patch
patches/collateral-evolutions/network/14-device-type.patch
patches/collateral-evolutions/network/15-symbol-export-conflicts.patch
patches/collateral-evolutions/network/17-netdev-queue.patch
patches/collateral-evolutions/network/22-multiqueue.patch
patches/collateral-evolutions/network/25-multicast-list_head.patch
patches/collateral-evolutions/network/36-workqueue.patch
patches/collateral-evolutions/network/42-netlink_seq.patch
patches/collateral-evolutions/network/45-remove-platform-id-table.patch
patches/collateral-evolutions/network/48-use_skb_get_queue_mapping.patch
patches/collateral-evolutions/network/62-usb_driver_lpm.patch
patches/collateral-evolutions/network/69-wowlan-no-socket.patch

index c1948494edcc1508d8655717392163f56c991a96..49605a3d8c59617e291b15220dea9af60f825789 100644 (file)
@@ -282,7 +282,7 @@ not < 3.3.0.
  
 --- a/drivers/gpu/drm/i915/i915_drv.c
 +++ b/drivers/gpu/drm/i915/i915_drv.c
-@@ -1025,7 +1025,11 @@ static struct drm_driver driver = {
+@@ -1030,7 +1030,11 @@ static struct drm_driver driver = {
         */
        .driver_features =
            DRIVER_USE_AGP | DRIVER_REQUIRE_AGP | /* DRIVER_USE_MTRR |*/
@@ -294,7 +294,7 @@ not < 3.3.0.
        .load = i915_driver_load,
        .unload = i915_driver_unload,
        .open = i915_driver_open,
-@@ -1048,10 +1052,12 @@ static struct drm_driver driver = {
+@@ -1053,10 +1057,12 @@ static struct drm_driver driver = {
        .gem_free_object = i915_gem_free_object,
        .gem_vm_ops = &i915_gem_vm_ops,
  
index 46e778da3b5037d8f58ce51e59dc892d5598c5e1..e13fea7c4e9e96690e84548bab7db0c8f1f4efae 100644 (file)
@@ -157,7 +157,7 @@ Date:   Wed Nov 19 21:32:24 2008 -0800
  
 --- a/drivers/net/wireless/mac80211_hwsim.c
 +++ b/drivers/net/wireless/mac80211_hwsim.c
-@@ -1689,7 +1689,7 @@ static const struct net_device_ops hwsim
+@@ -1695,7 +1695,7 @@ static const struct net_device_ops hwsim
  
  static void hwsim_mon_setup(struct net_device *dev)
  {
@@ -234,7 +234,7 @@ Date:   Wed Nov 19 21:32:24 2008 -0800
        strncpy(netdev->name, pci_name(pdev), sizeof(netdev->name) - 1);
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -1007,7 +1007,7 @@ static void ieee80211_if_setup(struct ne
+@@ -1017,7 +1017,7 @@ static void ieee80211_if_setup(struct ne
  {
        ether_setup(dev);
        dev->priv_flags &= ~IFF_TX_SKB_SHARING;
@@ -243,7 +243,7 @@ Date:   Wed Nov 19 21:32:24 2008 -0800
        dev->destructor = free_netdev;
  }
  
-@@ -1170,7 +1170,7 @@ static void ieee80211_setup_sdata(struct
+@@ -1180,7 +1180,7 @@ static void ieee80211_setup_sdata(struct
  
        /* only monitor/p2p-device differ */
        if (sdata->dev) {
@@ -252,7 +252,7 @@ Date:   Wed Nov 19 21:32:24 2008 -0800
                sdata->dev->type = ARPHRD_ETHER;
        }
  
-@@ -1208,7 +1208,7 @@ static void ieee80211_setup_sdata(struct
+@@ -1218,7 +1218,7 @@ static void ieee80211_setup_sdata(struct
                break;
        case NL80211_IFTYPE_MONITOR:
                sdata->dev->type = ARPHRD_IEEE80211_RADIOTAP;
index 9c19e35109425839c9ae2c26d7d338ea8ac4b37f..bd50e0d28753ae03b95524935d52497036e16882 100644 (file)
@@ -22,7 +22,7 @@ compile tested against older kernels.
         * For RX we handle drivers that zero-pad to end-of-packet.
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -1008,6 +1008,11 @@ static void ieee80211_if_setup(struct ne
+@@ -1018,6 +1018,11 @@ static void ieee80211_if_setup(struct ne
        ether_setup(dev);
        dev->priv_flags &= ~IFF_TX_SKB_SHARING;
        netdev_attach_ops(dev, &ieee80211_dataif_ops);
index 7f17b8015cfadcbfd8aefcd631744ae403143f3d..a38ceaf60c10ee24a8d29658a07d59e0bfde191e 100644 (file)
@@ -4,7 +4,7 @@ could be used.
 
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -1508,6 +1508,7 @@ int ieee80211_if_add(struct ieee80211_lo
+@@ -1518,6 +1518,7 @@ int ieee80211_if_add(struct ieee80211_lo
                        return -ENOMEM;
                dev_net_set(ndev, wiphy_net(local->hw.wiphy));
  
@@ -12,7 +12,7 @@ could be used.
                ndev->needed_headroom = local->tx_headroom +
                                        4*6 /* four MAC addresses */
                                        + 2 + 2 + 2 + 2 /* ctl, dur, seq, qos */
-@@ -1516,6 +1517,7 @@ int ieee80211_if_add(struct ieee80211_lo
+@@ -1526,6 +1527,7 @@ int ieee80211_if_add(struct ieee80211_lo
                                        - ETH_HLEN /* ethernet hard_header_len */
                                        + IEEE80211_ENCRYPT_HEADROOM;
                ndev->needed_tailroom = IEEE80211_ENCRYPT_TAILROOM;
index 3eba1ea380bd84ead8f134d4cd739e86c3dbb8f2..56dd3efc22f69092634283dba0013b0ed4884d37 100644 (file)
@@ -42,7 +42,7 @@ this one should other drivers / subsystem need this change.
 
 --- a/drivers/net/wireless/mac80211_hwsim.c
 +++ b/drivers/net/wireless/mac80211_hwsim.c
-@@ -2013,10 +2013,10 @@ static int hwsim_register_received_nl(st
+@@ -2019,10 +2019,10 @@ static int hwsim_register_received_nl(st
        if (info == NULL)
                goto out;
  
@@ -55,7 +55,7 @@ this one should other drivers / subsystem need this change.
  
        return 0;
  out:
-@@ -2053,7 +2053,7 @@ static int mac80211_hwsim_netlink_notify
+@@ -2059,7 +2059,7 @@ static int mac80211_hwsim_netlink_notify
        if (state != NETLINK_URELEASE)
                return NOTIFY_DONE;
  
@@ -174,7 +174,7 @@ this one should other drivers / subsystem need this change.
                             NL80211_CMD_GET_REG);
        if (!hdr)
                goto put_failure;
-@@ -5545,7 +5545,7 @@ static int nl80211_send_bss(struct sk_bu
+@@ -5558,7 +5558,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;
-@@ -5776,7 +5776,7 @@ static int nl80211_dump_survey(struct sk
+@@ -5789,7 +5789,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)
-@@ -6435,7 +6435,7 @@ static int nl80211_testmode_dump(struct
+@@ -6448,7 +6448,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;
-@@ -6514,7 +6514,7 @@ struct sk_buff *cfg80211_testmode_alloc_
+@@ -6527,7 +6527,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);
  }
-@@ -6874,7 +6874,7 @@ static int nl80211_remain_on_channel(str
+@@ -6887,7 +6887,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)) {
-@@ -7093,7 +7093,7 @@ static int nl80211_register_mgmt(struct
+@@ -7106,7 +7106,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]));
  }
-@@ -7163,7 +7163,7 @@ static int nl80211_tx_mgmt(struct sk_buf
+@@ -7176,7 +7176,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)) {
-@@ -7278,7 +7278,7 @@ static int nl80211_get_power_save(struct
+@@ -7291,7 +7291,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;
-@@ -7570,7 +7570,7 @@ static int nl80211_get_wowlan(struct sk_
+@@ -7583,7 +7583,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;
-@@ -7994,7 +7994,7 @@ static int nl80211_register_unexpected_f
+@@ -8007,7 +8007,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;
  }
  
-@@ -8024,7 +8024,7 @@ static int nl80211_probe_client(struct s
+@@ -8037,7 +8037,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)) {
-@@ -8068,13 +8068,13 @@ static int nl80211_register_beacons(stru
+@@ -8081,13 +8081,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);
-@@ -8158,7 +8158,7 @@ static int nl80211_get_protocol_features
+@@ -8160,7 +8160,7 @@ static int nl80211_get_protocol_features
        if (!msg)
                return -ENOMEM;
  
@@ -298,7 +298,7 @@ this one should other drivers / subsystem need this change.
                             NL80211_CMD_GET_PROTOCOL_FEATURES);
        if (!hdr)
                goto nla_put_failure;
-@@ -10563,12 +10563,12 @@ static int nl80211_netlink_notify(struct
+@@ -10565,12 +10565,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)
index 48585b52631aad9df832fac11e701b2154159d7c..51345b6eb300ba5ed7168fcc895f33e05fbe973d 100644 (file)
@@ -6,7 +6,7 @@ files...
 
 --- a/net/wireless/nl80211.c
 +++ b/net/wireless/nl80211.c
-@@ -6727,7 +6727,9 @@ static int nl80211_wiphy_netns(struct sk
+@@ -6740,7 +6740,9 @@ static int nl80211_wiphy_netns(struct sk
        if (!net_eq(wiphy_net(&rdev->wiphy), net))
                err = cfg80211_switch_netns(rdev, net);
  
@@ -34,7 +34,7 @@ files...
  
  static void cfg80211_rfkill_poll(struct rfkill *rfkill, void *data)
  {
-@@ -338,7 +340,9 @@ struct wiphy *wiphy_new(const struct cfg
+@@ -372,7 +374,9 @@ struct wiphy *wiphy_new(const struct cfg
        rdev->wiphy.flags |= WIPHY_FLAG_PS_ON_BY_DEFAULT;
  #endif
  
@@ -44,7 +44,7 @@ files...
  
        rdev->rfkill_ops.set_block = cfg80211_rfkill_set_block;
        rdev->rfkill = rfkill_alloc(dev_name(&rdev->wiphy.dev),
-@@ -891,8 +895,10 @@ static int cfg80211_netdev_notifier_call
+@@ -919,8 +923,10 @@ static int cfg80211_netdev_notifier_call
                wdev->identifier = ++rdev->wdev_id;
                list_add_rcu(&wdev->list, &rdev->wdev_list);
                rdev->devlist_generation++;
@@ -55,7 +55,7 @@ files...
  
                if (sysfs_create_link(&dev->dev.kobj, &rdev->wiphy.dev.kobj,
                                      "phy80211")) {
-@@ -1051,6 +1057,7 @@ static struct notifier_block cfg80211_ne
+@@ -1081,6 +1087,7 @@ static struct notifier_block cfg80211_ne
        .notifier_call = cfg80211_netdev_notifier_call,
  };
  
@@ -63,7 +63,7 @@ files...
  static void __net_exit cfg80211_pernet_exit(struct net *net)
  {
        struct cfg80211_registered_device *rdev;
-@@ -1068,14 +1075,17 @@ static void __net_exit cfg80211_pernet_e
+@@ -1098,14 +1105,17 @@ static void __net_exit cfg80211_pernet_e
  static struct pernet_operations cfg80211_pernet_ops = {
        .exit = cfg80211_pernet_exit,
  };
@@ -81,7 +81,7 @@ files...
  
        err = wiphy_sysfs_init();
        if (err)
-@@ -1110,8 +1120,10 @@ out_fail_nl80211:
+@@ -1142,8 +1152,10 @@ out_fail_nl80211:
  out_fail_notifier:
        wiphy_sysfs_exit();
  out_fail_sysfs:
@@ -92,7 +92,7 @@ files...
        return err;
  }
  subsys_initcall(cfg80211_init);
-@@ -1123,7 +1135,9 @@ static void __exit cfg80211_exit(void)
+@@ -1155,7 +1167,9 @@ static void __exit cfg80211_exit(void)
        unregister_netdevice_notifier(&cfg80211_netdev_notifier);
        wiphy_sysfs_exit();
        regulatory_exit();
index d87ec13effa353886eca7a502a4cfe7d4f222238..fcc721d0ffa2e31490bc7213758f191429c49cc9 100644 (file)
@@ -42,7 +42,7 @@ moved due to struct enlargements.
        u8 addr_mask[ETH_ALEN];
 --- a/net/wireless/core.c
 +++ b/net/wireless/core.c
-@@ -282,6 +282,17 @@ struct wiphy *wiphy_new(const struct cfg
+@@ -316,6 +316,17 @@ struct wiphy *wiphy_new(const struct cfg
        struct cfg80211_registered_device *rdev;
        int alloc_size;
  
index 1c02cedc0c1789df74a361bbe910c23083200f51..eb8c67fba958f300b1a316c8aaaeee64331ba80e 100644 (file)
@@ -6,7 +6,7 @@ thread in process context as well.
 
 --- a/drivers/net/wireless/b43/main.c
 +++ b/drivers/net/wireless/b43/main.c
-@@ -4244,8 +4244,13 @@ redo:
+@@ -4241,8 +4241,13 @@ redo:
        if (b43_bus_host_is_sdio(dev->dev)) {
                b43_sdio_free_irq(dev);
        } else {
@@ -20,7 +20,7 @@ thread in process context as well.
        }
        mutex_lock(&wl->mutex);
        dev = wl->current_dev;
-@@ -4291,9 +4296,17 @@ static int b43_wireless_core_start(struc
+@@ -4288,9 +4293,17 @@ static int b43_wireless_core_start(struc
                        goto out;
                }
        } else {
@@ -38,7 +38,7 @@ thread in process context as well.
                if (err) {
                        b43err(dev->wl, "Cannot request IRQ-%d\n",
                               dev->dev->irq);
-@@ -5116,6 +5129,10 @@ static int b43_setup_bands(struct b43_wl
+@@ -5113,6 +5126,10 @@ static int b43_setup_bands(struct b43_wl
  
  static void b43_wireless_core_detach(struct b43_wldev *dev)
  {
@@ -116,7 +116,7 @@ thread in process context as well.
        }
 --- a/drivers/net/wireless/ti/wlcore/main.c
 +++ b/drivers/net/wireless/ti/wlcore/main.c
-@@ -6054,11 +6054,22 @@ static void wlcore_nvs_cb(const struct f
+@@ -6054,13 +6054,24 @@ static void wlcore_nvs_cb(const struct f
        wl->platform_quirks = pdata->platform_quirks;
        wl->if_ops = pdev_data->if_ops;
  
@@ -139,7 +139,9 @@ thread in process context as well.
                                   irqflags, pdev->name, wl);
 +#endif
        if (ret < 0) {
-@@ -6135,7 +6145,11 @@ out_unreg:
+               wl1271_error("request_irq() failed: %d", ret);
+               goto out_free_nvs;
+@@ -6135,7 +6146,11 @@ out_unreg:
        wl1271_unregister_hw(wl);
  
  out_irq:
@@ -151,7 +153,7 @@ thread in process context as well.
  
  out_free_nvs:
        kfree(wl->nvs);
-@@ -6181,7 +6195,12 @@ int wlcore_remove(struct platform_device
+@@ -6181,7 +6196,12 @@ int wlcore_remove(struct platform_device
                disable_irq_wake(wl->irq);
        }
        wl1271_unregister_hw(wl);
index 84ef8784f9f85bf5966e637e83ca709073a1482c..2e2aca0cf745ee44c6a89b2dc1b4dcc969a33ffb 100644 (file)
@@ -18,7 +18,7 @@ CONFIG_WIRELESS_EXT in compat-drivers.
 
 --- a/net/wireless/core.c
 +++ b/net/wireless/core.c
-@@ -339,10 +339,6 @@ struct wiphy *wiphy_new(const struct cfg
+@@ -373,10 +373,6 @@ struct wiphy *wiphy_new(const struct cfg
        INIT_WORK(&rdev->sched_scan_results_wk, __cfg80211_sched_scan_results);
        INIT_DELAYED_WORK(&rdev->dfs_update_channels_wk,
                          cfg80211_dfs_channels_update_work);
@@ -29,7 +29,7 @@ CONFIG_WIRELESS_EXT in compat-drivers.
        device_initialize(&rdev->wiphy.dev);
        rdev->wiphy.dev.class = &ieee80211_class;
        rdev->wiphy.dev.platform_data = rdev;
-@@ -919,6 +915,15 @@ static int cfg80211_netdev_notifier_call
+@@ -947,6 +943,15 @@ static int cfg80211_netdev_notifier_call
                wdev->sme_state = CFG80211_SME_IDLE;
                mutex_unlock(&rdev->devlist_mtx);
  #ifdef CONFIG_CFG80211_WEXT
index e85a198ee6afaf3a5d976dee684f614d54fad740..144f26ed2d2d1ea09e72c671a5590c4a790ac18b 100644 (file)
@@ -164,7 +164,7 @@ calls on compat code with only slight modifications.
  static int __init
 --- a/drivers/net/wireless/iwlegacy/common.c
 +++ b/drivers/net/wireless/iwlegacy/common.c
-@@ -4936,8 +4936,17 @@ il_pci_resume(struct device *device)
+@@ -4935,8 +4935,17 @@ il_pci_resume(struct device *device)
        return 0;
  }
  
index 9eefa861f8d468674bdc1383c270bd376cb5cd06..3d497dfd86fe78d25fc07673692c700e45963553 100644 (file)
@@ -6,7 +6,7 @@ So we need to just ifdef this part out.
 
 --- a/net/mac80211/tx.c
 +++ b/net/mac80211/tx.c
-@@ -2031,6 +2031,7 @@ netdev_tx_t ieee80211_subif_start_xmit(s
+@@ -2035,6 +2035,7 @@ netdev_tx_t ieee80211_subif_start_xmit(s
                goto fail_rcu;
        }
  
@@ -14,7 +14,7 @@ So we need to just ifdef this part out.
        if (unlikely(!multicast && skb->sk &&
                     skb_shinfo(skb)->tx_flags & SKBTX_WIFI_STATUS)) {
                struct sk_buff *orig_skb = skb;
-@@ -2059,6 +2060,7 @@ netdev_tx_t ieee80211_subif_start_xmit(s
+@@ -2063,6 +2064,7 @@ netdev_tx_t ieee80211_subif_start_xmit(s
                        skb = orig_skb;
                }
        }
index 580179cb6dc292a91faf47aca5b2abd90b421616..b5163991cb56d5a1136149cf670210ae2c42b582 100644 (file)
@@ -8,7 +8,7 @@ compile warning.
 
 --- a/net/wireless/core.c
 +++ b/net/wireless/core.c
-@@ -811,9 +811,11 @@ void cfg80211_unregister_wdev(struct wir
+@@ -839,9 +839,11 @@ void cfg80211_unregister_wdev(struct wir
  }
  EXPORT_SYMBOL(cfg80211_unregister_wdev);
  
index 7c96bb7818449020bce61d13aaa54a6d566d6962..09c2ffe3eec1dab967bf484ae3dab56a7607771a 100644 (file)
@@ -3,7 +3,7 @@ To avoid conflicts with the other export we rename our.
 
 --- a/net/mac80211/rx.c
 +++ b/net/mac80211/rx.c
-@@ -3305,7 +3305,12 @@ void ieee80211_rx(struct ieee80211_hw *h
+@@ -3317,7 +3317,12 @@ void ieee80211_rx(struct ieee80211_hw *h
   drop:
        kfree_skb(skb);
  }
index 3ab9fc15bb4e580862544973b035f6237c602741..9dbe17b5a9c12788d9c93c277a77b84cf6ee93e6 100644 (file)
@@ -14,7 +14,7 @@ The patch that introduced this on mac80211 was:
 
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -1633,6 +1633,7 @@ void ieee80211_sdata_stop(struct ieee802
+@@ -1643,6 +1643,7 @@ void ieee80211_sdata_stop(struct ieee802
   * Remove all interfaces, may only be called at hardware unregistration
   * time because it doesn't do RCU-safe list removals.
   */
@@ -22,7 +22,7 @@ The patch that introduced this on mac80211 was:
  void ieee80211_remove_interfaces(struct ieee80211_local *local)
  {
        struct ieee80211_sub_if_data *sdata, *tmp;
-@@ -1660,6 +1661,22 @@ void ieee80211_remove_interfaces(struct
+@@ -1670,6 +1671,22 @@ void ieee80211_remove_interfaces(struct
                kfree(sdata);
        }
  }
index c18069b82617b0d0b4dc712b1a8ed39762d724f1..8049f38235cad643385062132696554aab1d9987 100644 (file)
@@ -30,7 +30,7 @@ in compat.
 
 --- a/net/mac80211/tx.c
 +++ b/net/mac80211/tx.c
-@@ -1508,6 +1508,10 @@ void ieee80211_xmit(struct ieee80211_sub
+@@ -1512,6 +1512,10 @@ void ieee80211_xmit(struct ieee80211_sub
                }
        }
  
index 56e9edaab7fbd27582d36dac95f035a104c0251e..3a020055d23802a1516b6a292bdcb2afd322a2f9 100644 (file)
@@ -536,7 +536,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  static void rtl8187_configure_filter(struct ieee80211_hw *dev,
 --- a/drivers/net/wireless/ti/wlcore/main.c
 +++ b/drivers/net/wireless/ti/wlcore/main.c
-@@ -2937,11 +2937,20 @@ struct wl1271_filter_params {
+@@ -2952,11 +2952,20 @@ struct wl1271_filter_params {
        u8 mc_list[ACX_MC_ADDRESS_GROUP_MAX][ETH_ALEN];
  };
  
@@ -557,7 +557,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
        fp = kzalloc(sizeof(*fp), GFP_ATOMIC);
        if (!fp) {
-@@ -2950,16 +2959,40 @@ static u64 wl1271_op_prepare_multicast(s
+@@ -2965,16 +2974,40 @@ static u64 wl1271_op_prepare_multicast(s
        }
  
        /* update multicast filtering parameters */
@@ -651,7 +651,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        }
 --- a/include/net/mac80211.h
 +++ b/include/net/mac80211.h
-@@ -2601,7 +2601,11 @@ struct ieee80211_ops {
+@@ -2604,7 +2604,11 @@ struct ieee80211_ops {
        void (*stop_ap)(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
  
        u64 (*prepare_multicast)(struct ieee80211_hw *hw,
@@ -712,7 +712,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
 --- a/net/mac80211/ieee80211_i.h
 +++ b/net/mac80211/ieee80211_i.h
-@@ -912,7 +912,12 @@ struct ieee80211_local {
+@@ -907,7 +907,12 @@ struct ieee80211_local {
        struct work_struct reconfig_filter;
  
        /* aggregated multicast list */
@@ -727,7 +727,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -742,8 +742,13 @@ static void ieee80211_do_stop(struct iee
+@@ -743,8 +743,13 @@ static void ieee80211_do_stop(struct iee
        if (sdata->dev) {
                netif_addr_lock_bh(sdata->dev);
                spin_lock_bh(&local->filter_lock);
@@ -741,9 +741,9 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
                spin_unlock_bh(&local->filter_lock);
                netif_addr_unlock_bh(sdata->dev);
  
-@@ -920,7 +925,12 @@ static void ieee80211_set_multicast_list
-               sdata->flags ^= IEEE80211_SDATA_PROMISC;
-       }
+@@ -930,7 +935,12 @@ static void ieee80211_set_multicast_list
+               drv_set_multicast_list(local, sdata, &dev->mc);
        spin_lock_bh(&local->filter_lock);
 +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35))
        __hw_addr_sync(&local->mc_list, &dev->mc, dev->addr_len);
@@ -768,7 +768,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        spin_unlock_bh(&local->filter_lock);
  
        /* be a bit nasty */
-@@ -610,9 +614,11 @@ struct ieee80211_hw *ieee80211_alloc_hw(
+@@ -592,9 +596,11 @@ struct ieee80211_hw *ieee80211_alloc_hw(
        wiphy->vht_capa_mod_mask = &mac80211_vht_capa_mod_mask;
  
        INIT_LIST_HEAD(&local->interfaces);
index 2e55c0e3f1742162380fbaa224937e2fb4ca298b..c2c6bbd6f0aeaf7aa47130d3823e6a841745f492 100644 (file)
@@ -3,7 +3,7 @@ The rest is backported in include/linux/compat-2.6.37.h
 
 --- a/net/mac80211/main.c
 +++ b/net/mac80211/main.c
-@@ -1170,6 +1170,10 @@ static void __exit ieee80211_exit(void)
+@@ -1152,6 +1152,10 @@ static void __exit ieee80211_exit(void)
        rc80211_minstrel_ht_exit();
        rc80211_minstrel_exit();
  
index f36e7773055e655f043d12b2180f297f15ad3519..be71278419be4d1ee64a6ee26bc02948b97ef971 100644 (file)
@@ -1,6 +1,6 @@
 --- a/net/wireless/nl80211.c
 +++ b/net/wireless/nl80211.c
-@@ -5656,7 +5656,9 @@ static int nl80211_dump_scan(struct sk_b
+@@ -5669,7 +5669,9 @@ static int nl80211_dump_scan(struct sk_b
        spin_lock_bh(&rdev->bss_lock);
        cfg80211_bss_expire(rdev);
  
index 75fec721de0bee1a495fb6919d956ed8ce2b2a63..c2a040da2115c1636c2a1f03db6b32dd269a45a1 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/wireless/ti/wl12xx/main.c
 +++ b/drivers/net/wireless/ti/wl12xx/main.c
-@@ -1814,16 +1814,20 @@ out:
+@@ -1815,16 +1815,20 @@ out:
        return wlcore_remove(pdev);
  }
  
index 33b934046831f96a7b37f5c9259c091c469124d7..e1b52cd7c4b5e3c515a8b4cb04c75d9d910e9099 100644 (file)
@@ -4,7 +4,7 @@ function always returns something.
 
 --- a/drivers/net/wireless/b43/main.c
 +++ b/drivers/net/wireless/b43/main.c
-@@ -3457,11 +3457,11 @@ static void b43_op_tx(struct ieee80211_h
+@@ -3454,11 +3454,11 @@ static void b43_op_tx(struct ieee80211_h
        }
        B43_WARN_ON(skb_shinfo(skb)->nr_frags);
  
index 38f10b517aadbde669eff75a42ce4c3e27707292..458ba4cfb75ebc2107cc8f5f2230e37320cf2fdb 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/bluetooth/ath3k.c
 +++ b/drivers/bluetooth/ath3k.c
-@@ -471,7 +471,9 @@ static struct usb_driver ath3k_driver =
+@@ -473,7 +473,9 @@ static struct usb_driver ath3k_driver =
        .probe          = ath3k_probe,
        .disconnect     = ath3k_disconnect,
        .id_table       = ath3k_table,
@@ -48,7 +48,7 @@
  module_usb_driver(bpa10x_driver);
 --- a/drivers/bluetooth/btusb.c
 +++ b/drivers/bluetooth/btusb.c
-@@ -1233,7 +1233,9 @@ static struct usb_driver btusb_driver =
+@@ -1234,7 +1234,9 @@ static struct usb_driver btusb_driver =
  #endif
        .id_table       = btusb_table,
        .supports_autosuspend = 1,
index e8d691ad13e5fb2153d57fa37881c80c24ee69b5..225043e2179a1fe17d35eed5eab5a22117057e18 100644 (file)
@@ -2,7 +2,7 @@ __sock_create() is not available on kernel version < 2.6.37.
 
 --- a/net/wireless/nl80211.c
 +++ b/net/wireless/nl80211.c
-@@ -7715,7 +7715,7 @@ static int nl80211_parse_wowlan_tcp(stru
+@@ -7728,7 +7728,7 @@ static int nl80211_parse_wowlan_tcp(stru
                port = nla_get_u16(tb[NL80211_WOWLAN_TCP_SRC_PORT]);
        else
                port = 0;