compat-wireless: refresh patches
authorLuis R. Rodriguez <lrodriguez@atheros.com>
Wed, 30 Mar 2011 18:03:17 +0000 (11:03 -0700)
committerLuis R. Rodriguez <lrodriguez@atheros.com>
Wed, 30 Mar 2011 18:03:17 +0000 (11:03 -0700)
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
18 files changed:
patches/01-netdev.patch
patches/02-ksize.patch
patches/04-netns.patch
patches/05-usb.patch
patches/08-rename-config-options.patch
patches/09-threaded-irq.patch
patches/11-dev-pm-ops.patch
patches/14-device-type.patch
patches/15-symbol-export-conflicts.patch
patches/16-bluetooth.patch
patches/17-netdev-queue.patch
patches/18-rename-usb-net-symbols.patch
patches/22-multiqueue.patch
patches/25-multicast-list_head.patch
patches/31-backport-sk_add_backlog.patch
patches/34-backport-bin_attribute.patch
patches/36-workqueue.patch
patches/99-change-makefiles.patch

index eba863733cabf2372e2cd45259b75a10e5abd1ea..dc5ea98e664437f6b4613141aede9e80755bbc50 100644 (file)
@@ -23,7 +23,7 @@ without creating a headache on maintenance of the pathes.
        if (unlikely(retval < 0)) {
 --- a/drivers/net/usb/usbnet.c
 +++ b/drivers/net/usb/usbnet.c
-@@ -1359,7 +1359,7 @@ usbnet_probe (struct usb_interface *udev
+@@ -1361,7 +1361,7 @@ usbnet_probe (struct usb_interface *udev
                net->features |= NETIF_F_HIGHDMA;
  #endif
  
@@ -34,7 +34,7 @@ without creating a headache on maintenance of the pathes.
  
 --- a/drivers/net/wireless/rndis_wlan.c
 +++ b/drivers/net/wireless/rndis_wlan.c
-@@ -3437,7 +3437,7 @@ static int rndis_wlan_bind(struct usbnet
+@@ -3440,7 +3440,7 @@ static int rndis_wlan_bind(struct usbnet
         * rndis_host wants to avoid all OID as much as possible
         * so do promisc/multicast handling in rndis_wlan.
         */
@@ -45,7 +45,7 @@ without creating a headache on maintenance of the pathes.
        retval = rndis_set_oid(usbdev, OID_GEN_CURRENT_PACKET_FILTER, &tmp,
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -691,7 +691,12 @@ static const struct net_device_ops ieee8
+@@ -698,7 +698,12 @@ static const struct net_device_ops ieee8
  static void ieee80211_if_setup(struct net_device *dev)
  {
        ether_setup(dev);
@@ -59,7 +59,7 @@ without creating a headache on maintenance of the pathes.
        dev->destructor = free_netdev;
  }
  
-@@ -838,7 +843,7 @@ static void ieee80211_setup_sdata(struct
+@@ -845,7 +850,7 @@ static void ieee80211_setup_sdata(struct
        /* and set some type-dependent values */
        sdata->vif.type = type;
        sdata->vif.p2p = false;
@@ -68,7 +68,7 @@ without creating a headache on maintenance of the pathes.
        sdata->wdev.iftype = type;
  
        sdata->control_port_protocol = cpu_to_be16(ETH_P_PAE);
-@@ -877,7 +882,7 @@ static void ieee80211_setup_sdata(struct
+@@ -884,7 +889,7 @@ static void ieee80211_setup_sdata(struct
                break;
        case NL80211_IFTYPE_MONITOR:
                sdata->dev->type = ARPHRD_IEEE80211_RADIOTAP;
@@ -77,7 +77,7 @@ without creating a headache on maintenance of the pathes.
                sdata->u.mntr_flags = MONITOR_FLAG_CONTROL |
                                      MONITOR_FLAG_OTHER_BSS;
                break;
-@@ -1128,6 +1133,8 @@ int ieee80211_if_add(struct ieee80211_lo
+@@ -1135,6 +1140,8 @@ int ieee80211_if_add(struct ieee80211_lo
                return -ENOMEM;
        dev_net_set(ndev, wiphy_net(local->hw.wiphy));
  
@@ -86,7 +86,7 @@ without creating a headache on maintenance of the pathes.
        ndev->needed_headroom = local->tx_headroom +
                                4*6 /* four MAC addresses */
                                + 2 + 2 + 2 + 2 /* ctl, dur, seq, qos */
-@@ -1136,6 +1143,7 @@ int ieee80211_if_add(struct ieee80211_lo
+@@ -1143,6 +1150,7 @@ int ieee80211_if_add(struct ieee80211_lo
                                - ETH_HLEN /* ethernet hard_header_len */
                                + IEEE80211_ENCRYPT_HEADROOM;
        ndev->needed_tailroom = IEEE80211_ENCRYPT_TAILROOM;
@@ -217,7 +217,7 @@ without creating a headache on maintenance of the pathes.
        wdev->netdev = ndev;
 --- a/drivers/net/wireless/libertas/main.c
 +++ b/drivers/net/wireless/libertas/main.c
-@@ -831,7 +831,7 @@ struct lbs_private *lbs_add_card(void *c
+@@ -834,7 +834,7 @@ struct lbs_private *lbs_add_card(void *c
        wdev->netdev = dev;
        priv->dev = dev;
  
@@ -256,7 +256,7 @@ without creating a headache on maintenance of the pathes.
  #define LBS_DEB_LEAVE 0x00000002
 --- a/drivers/net/wireless/mac80211_hwsim.c
 +++ b/drivers/net/wireless/mac80211_hwsim.c
-@@ -1104,7 +1104,7 @@ static const struct net_device_ops hwsim
+@@ -1103,7 +1103,7 @@ static const struct net_device_ops hwsim
  
  static void hwsim_mon_setup(struct net_device *dev)
  {
@@ -325,7 +325,7 @@ without creating a headache on maintenance of the pathes.
        atl1e_set_ethtool_ops(netdev);
 --- a/drivers/net/atl1c/atl1c_main.c
 +++ b/drivers/net/atl1c/atl1c_main.c
-@@ -2599,7 +2599,7 @@ static int atl1c_init_netdev(struct net_
+@@ -2600,7 +2600,7 @@ static int atl1c_init_netdev(struct net_
        pci_set_drvdata(pdev, netdev);
  
        netdev->irq  = pdev->irq;
@@ -336,7 +336,7 @@ without creating a headache on maintenance of the pathes.
  
 --- a/drivers/net/atlx/atl1.c
 +++ b/drivers/net/atlx/atl1.c
-@@ -2988,7 +2988,7 @@ static int __devinit atl1_probe(struct p
+@@ -2971,7 +2971,7 @@ static int __devinit atl1_probe(struct p
        adapter->mii.phy_id_mask = 0x1f;
        adapter->mii.reg_num_mask = 0x1f;
  
index 0f51bcb4404a0bae5fdc5db5379d0b997de80df4..c8e8c9a1a0ef83f0f4c552c35b15e60220d6e9ff 100644 (file)
@@ -37,7 +37,7 @@ of the situation.
                priv->keys[index].key = kzalloc(key_len, GFP_ATOMIC);
 --- a/net/wireless/scan.c
 +++ b/net/wireless/scan.c
-@@ -432,9 +432,14 @@ cfg80211_bss_update(struct cfg80211_regi
+@@ -439,9 +439,14 @@ cfg80211_bss_update(struct cfg80211_regi
                        size_t used = dev->wiphy.bss_priv_size + sizeof(*res);
                        size_t ielen = res->pub.len_proberesp_ies;
  
@@ -52,7 +52,7 @@ of the situation.
                                memcpy(found->pub.proberesp_ies,
                                       res->pub.proberesp_ies, ielen);
                                found->pub.len_proberesp_ies = ielen;
-@@ -468,9 +473,14 @@ cfg80211_bss_update(struct cfg80211_regi
+@@ -475,9 +480,14 @@ cfg80211_bss_update(struct cfg80211_regi
                                (found->pub.information_elements ==
                                 found->pub.beacon_ies);
  
index 8669617cd04159f850cf7fdf4c6aeb4a6c6bcf7d..f4974411b2d8e7ca82eaf967b55d1bea6e63acff 100644 (file)
@@ -6,7 +6,7 @@ files...
 
 --- a/net/wireless/nl80211.c
 +++ b/net/wireless/nl80211.c
-@@ -4203,7 +4203,9 @@ static int nl80211_wiphy_netns(struct sk
+@@ -4221,7 +4221,9 @@ static int nl80211_wiphy_netns(struct sk
        if (!net_eq(wiphy_net(&rdev->wiphy), net))
                err = cfg80211_switch_netns(rdev, net);
  
@@ -55,7 +55,7 @@ files...
  
                if (sysfs_create_link(&dev->dev.kobj, &rdev->wiphy.dev.kobj,
                                      "phy80211")) {
-@@ -862,6 +868,7 @@ static struct notifier_block cfg80211_ne
+@@ -868,6 +874,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;
-@@ -879,14 +886,17 @@ static void __net_exit cfg80211_pernet_e
+@@ -885,14 +892,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)
-@@ -921,8 +931,10 @@ out_fail_nl80211:
+@@ -927,8 +937,10 @@ out_fail_nl80211:
  out_fail_notifier:
        wiphy_sysfs_exit();
  out_fail_sysfs:
@@ -92,7 +92,7 @@ files...
        return err;
  }
  subsys_initcall(cfg80211_init);
-@@ -934,7 +946,9 @@ static void __exit cfg80211_exit(void)
+@@ -940,7 +952,9 @@ static void __exit cfg80211_exit(void)
        unregister_netdevice_notifier(&cfg80211_netdev_notifier);
        wiphy_sysfs_exit();
        regulatory_exit();
index 9384af08a2da237d5764030982061dde919b072a..723f3073e0478ca62762b552a0098c727926724f 100644 (file)
@@ -2,7 +2,7 @@ USB opt soft_unbid was added as of 2.6.27.
 
 --- a/drivers/net/wireless/p54/p54usb.c
 +++ b/drivers/net/wireless/p54/p54usb.c
-@@ -1075,7 +1075,9 @@ static struct usb_driver p54u_driver = {
+@@ -1076,7 +1076,9 @@ static struct usb_driver p54u_driver = {
        .resume = p54u_resume,
        .reset_resume = p54u_resume,
  #endif /* CONFIG_PM */
@@ -14,7 +14,7 @@ USB opt soft_unbid was added as of 2.6.27.
  static int __init p54u_init(void)
 --- a/drivers/net/wireless/ath/ath9k/hif_usb.c
 +++ b/drivers/net/wireless/ath/ath9k/hif_usb.c
-@@ -1106,7 +1106,9 @@ static struct usb_driver ath9k_hif_usb_d
+@@ -1167,7 +1167,9 @@ static struct usb_driver ath9k_hif_usb_d
        .reset_resume = ath9k_hif_usb_resume,
  #endif
        .id_table = ath9k_hif_usb_ids,
index b951073bd17a8bf41b3c7f8785c482ed5182da22..16f788e8821efa92947b4055fc0fae8a25ea154a 100644 (file)
@@ -46,7 +46,7 @@ CONFIG_BT_HIDP does not build with older kernel versions.
                         * reporting the number of tids has AGG on. 0 means
 --- a/drivers/net/wireless/iwlegacy/iwl4965-base.c
 +++ b/drivers/net/wireless/iwlegacy/iwl4965-base.c
-@@ -3563,10 +3563,10 @@ void iwl4965_txq_set_sched(struct iwl_pr
+@@ -3562,10 +3562,10 @@ void iwl4965_txq_set_sched(struct iwl_pr
  
  /* Hardware specific file defines the PCI IDs table for that hardware module */
  static DEFINE_PCI_DEVICE_TABLE(iwl4965_hw_card_ids) = {
index df164e95d3b9f00714d066ed199c10d344381cc6..f62933eb0285d77a2f08712c373de78219429492 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
-@@ -3954,8 +3954,13 @@ redo:
+@@ -3952,8 +3952,13 @@ redo:
        if (dev->dev->bus->bustype == SSB_BUSTYPE_SDIO) {
                b43_sdio_free_irq(dev);
        } else {
@@ -20,7 +20,7 @@ thread in process context as well.
        }
        mutex_lock(&wl->mutex);
        dev = wl->current_dev;
-@@ -3995,9 +4000,17 @@ static int b43_wireless_core_start(struc
+@@ -3993,9 +3998,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);
                        goto out;
-@@ -4726,6 +4739,10 @@ static int b43_setup_bands(struct b43_wl
+@@ -4724,6 +4737,10 @@ static int b43_setup_bands(struct b43_wl
  
  static void b43_wireless_core_detach(struct b43_wldev *dev)
  {
index 24e72ac4920cb418c6d30b07cf2da02ab95dbe4d..7c77b78f020993087967dd50121721eee3d167e1 100644 (file)
@@ -119,7 +119,7 @@ calls on compat code with only slight modifications.
  int ath_pci_init(void)
 --- a/drivers/net/wireless/iwlegacy/iwl-core.c
 +++ b/drivers/net/wireless/iwlegacy/iwl-core.c
-@@ -2032,15 +2032,17 @@ int iwl_legacy_pci_resume(struct device
+@@ -2038,15 +2038,17 @@ int iwl_legacy_pci_resume(struct device
  }
  EXPORT_SYMBOL(iwl_legacy_pci_resume);
  
@@ -147,7 +147,7 @@ calls on compat code with only slight modifications.
  
 --- a/drivers/net/wireless/iwlegacy/iwl-core.h
 +++ b/drivers/net/wireless/iwlegacy/iwl-core.h
-@@ -506,7 +506,12 @@ __le32 iwl_legacy_add_beacon_time(struct
+@@ -508,7 +508,12 @@ __le32 iwl_legacy_add_beacon_time(struct
  #ifdef CONFIG_PM
  int iwl_legacy_pci_suspend(struct device *device);
  int iwl_legacy_pci_resume(struct device *device);
@@ -162,7 +162,7 @@ calls on compat code with only slight modifications.
  
 --- a/drivers/net/wireless/iwlegacy/iwl3945-base.c
 +++ b/drivers/net/wireless/iwlegacy/iwl3945-base.c
-@@ -4237,7 +4237,12 @@ static struct pci_driver iwl3945_driver
+@@ -4236,7 +4236,12 @@ static struct pci_driver iwl3945_driver
        .id_table = iwl3945_hw_card_ids,
        .probe = iwl3945_pci_probe,
        .remove = __devexit_p(iwl3945_pci_remove),
@@ -177,7 +177,7 @@ calls on compat code with only slight modifications.
  static int __init iwl3945_init(void)
 --- a/drivers/net/wireless/iwlegacy/iwl4965-base.c
 +++ b/drivers/net/wireless/iwlegacy/iwl4965-base.c
-@@ -3577,7 +3577,12 @@ static struct pci_driver iwl4965_driver
+@@ -3576,7 +3576,12 @@ static struct pci_driver iwl4965_driver
        .id_table = iwl4965_hw_card_ids,
        .probe = iwl4965_pci_probe,
        .remove = __devexit_p(iwl4965_pci_remove),
@@ -192,7 +192,7 @@ calls on compat code with only slight modifications.
  static int __init iwl4965_init(void)
 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c
 +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c
-@@ -4697,7 +4697,12 @@ static struct pci_driver iwl_driver = {
+@@ -4546,7 +4546,12 @@ static struct pci_driver iwl_driver = {
        .id_table = iwl_hw_card_ids,
        .probe = iwl_pci_probe,
        .remove = __devexit_p(iwl_pci_remove),
@@ -207,7 +207,7 @@ calls on compat code with only slight modifications.
  static int __init iwl_init(void)
 --- a/drivers/net/wireless/iwlwifi/iwl-core.c
 +++ b/drivers/net/wireless/iwlwifi/iwl-core.c
-@@ -2070,13 +2070,9 @@ int iwl_pci_resume(struct device *device
+@@ -2007,13 +2007,9 @@ int iwl_pci_resume(struct device *device
        return 0;
  }
  
@@ -227,7 +227,7 @@ calls on compat code with only slight modifications.
  #endif /* CONFIG_PM */
 --- a/drivers/net/wireless/iwlwifi/iwl-core.h
 +++ b/drivers/net/wireless/iwlwifi/iwl-core.h
-@@ -621,7 +621,12 @@ __le32 iwl_add_beacon_time(struct iwl_pr
+@@ -609,7 +609,12 @@ __le32 iwl_add_beacon_time(struct iwl_pr
  #ifdef CONFIG_PM
  int iwl_pci_suspend(struct device *device);
  int iwl_pci_resume(struct device *device);
index b801ed9c53da1db7e064d5fa985e309f8a714a6d..9581466bbf088c95d7fad3d4b95c35f1277e1625 100644 (file)
@@ -22,7 +22,7 @@ compile warning.
                                         unsigned long state,
 --- a/net/bluetooth/bnep/core.c
 +++ b/net/bluetooth/bnep/core.c
-@@ -537,9 +537,11 @@ static struct device *bnep_get_device(st
+@@ -546,9 +546,11 @@ static struct device *bnep_get_device(st
        return conn ? &conn->dev : NULL;
  }
  
@@ -36,7 +36,7 @@ compile warning.
  {
 --- a/drivers/net/usb/usbnet.c
 +++ b/drivers/net/usb/usbnet.c
-@@ -1272,13 +1272,17 @@ static const struct net_device_ops usbne
+@@ -1274,13 +1274,17 @@ static const struct net_device_ops usbne
  
  // precondition: never called in_interrupt
  
index b99f0855a71f6ad6c2f167d34519ca7d6bb1bb45..c15baa98e91c2aacd79724fcea0c2bfb22c92275 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
-@@ -2952,7 +2952,12 @@ void ieee80211_rx(struct ieee80211_hw *h
+@@ -2971,7 +2971,12 @@ void ieee80211_rx(struct ieee80211_hw *h
   drop:
        kfree_skb(skb);
  }
index 57863acd212bb5dc24a8e1bd14dcaacd65e8fc3d..bc4514299865c00e4bbfc5ec46f4a79cc14a6eba 100644 (file)
@@ -159,7 +159,7 @@ here still, but for now we keep this here.
  };
 --- a/net/bluetooth/hidp/core.c
 +++ b/net/bluetooth/hidp/core.c
-@@ -397,6 +397,7 @@ err_eio:
+@@ -399,6 +399,7 @@ err_eio:
        return -EIO;
  }
  
@@ -167,7 +167,7 @@ here still, but for now we keep this here.
  static int hidp_output_raw_report(struct hid_device *hid, unsigned char *data, size_t count,
                unsigned char report_type)
  {
-@@ -456,6 +457,16 @@ err:
+@@ -458,6 +459,16 @@ err:
        mutex_unlock(&session->report_mutex);
        return ret;
  }
@@ -184,7 +184,7 @@ here still, but for now we keep this here.
  
  static void hidp_idle_timeout(unsigned long arg)
  {
-@@ -752,8 +763,14 @@ static int hidp_session(void *arg)
+@@ -755,8 +766,14 @@ static int hidp_session(void *arg)
        }
  
        if (session->hid) {
@@ -199,7 +199,7 @@ here still, but for now we keep this here.
        }
  
        /* Wakeup user-space polling for socket errors */
-@@ -866,6 +883,70 @@ static void hidp_close(struct hid_device
+@@ -869,6 +886,70 @@ static void hidp_close(struct hid_device
  {
  }
  
@@ -270,7 +270,7 @@ here still, but for now we keep this here.
  static int hidp_parse(struct hid_device *hid)
  {
        struct hidp_session *session = hid->driver_data;
-@@ -950,7 +1031,9 @@ static int hidp_setup_hid(struct hidp_se
+@@ -953,7 +1034,9 @@ static int hidp_setup_hid(struct hidp_se
        hid->dev.parent = hidp_get_device(session);
        hid->ll_driver = &hidp_hid_driver;
  
@@ -280,7 +280,7 @@ here still, but for now we keep this here.
        hid->hid_output_raw_report = hidp_output_raw_report;
  
        return 0;
-@@ -961,6 +1044,7 @@ fault:
+@@ -964,6 +1047,7 @@ fault:
  
        return err;
  }
@@ -288,7 +288,7 @@ here still, but for now we keep this here.
  
  int hidp_add_connection(struct hidp_connadd_req *req, struct socket *ctrl_sock, struct socket *intr_sock)
  {
-@@ -979,6 +1063,39 @@ int hidp_add_connection(struct hidp_conn
+@@ -982,6 +1066,39 @@ int hidp_add_connection(struct hidp_conn
  
        BT_DBG("rd_data %p rd_size %d", req->rd_data, req->rd_size);
  
@@ -328,7 +328,7 @@ here still, but for now we keep this here.
        down_write(&hidp_session_sem);
  
        s = __hidp_get_session(&bt_sk(ctrl_sock->sk)->dst);
-@@ -1010,6 +1127,7 @@ int hidp_add_connection(struct hidp_conn
+@@ -1013,6 +1130,7 @@ int hidp_add_connection(struct hidp_conn
        session->flags   = req->flags & (1 << HIDP_BLUETOOTH_VENDOR_ID);
        session->idle_to = req->idle_to;
  
@@ -336,7 +336,7 @@ here still, but for now we keep this here.
        if (req->rd_size > 0) {
                err = hidp_setup_hid(session, req);
                if (err && err != -ENODEV)
-@@ -1021,6 +1139,16 @@ int hidp_add_connection(struct hidp_conn
+@@ -1024,6 +1142,16 @@ int hidp_add_connection(struct hidp_conn
                if (err < 0)
                        goto purge;
        }
@@ -353,7 +353,7 @@ here still, but for now we keep this here.
  
        __hidp_link_session(session);
  
-@@ -1066,6 +1194,7 @@ unlink:
+@@ -1069,6 +1197,7 @@ unlink:
                session->input = NULL;
        }
  
@@ -361,7 +361,7 @@ here still, but for now we keep this here.
        if (session->hid) {
                hid_destroy_device(session->hid);
                session->hid = NULL;
-@@ -1077,10 +1206,15 @@ unlink:
+@@ -1080,10 +1209,15 @@ unlink:
  purge:
        skb_queue_purge(&session->ctrl_transmit);
        skb_queue_purge(&session->intr_transmit);
@@ -377,7 +377,7 @@ here still, but for now we keep this here.
        input_free_device(session->input);
        kfree(session);
        return err;
-@@ -1170,6 +1304,7 @@ int hidp_get_conninfo(struct hidp_connin
+@@ -1173,6 +1307,7 @@ int hidp_get_conninfo(struct hidp_connin
        return err;
  }
  
@@ -385,7 +385,7 @@ here still, but for now we keep this here.
  static const struct hid_device_id hidp_table[] = {
        { HID_BLUETOOTH_DEVICE(HID_ANY_ID, HID_ANY_ID) },
        { }
-@@ -1179,6 +1314,7 @@ static struct hid_driver hidp_driver = {
+@@ -1182,6 +1317,7 @@ static struct hid_driver hidp_driver = {
        .name = "generic-bluetooth",
        .id_table = hidp_table,
  };
@@ -393,7 +393,7 @@ here still, but for now we keep this here.
  
  static int __init hidp_init(void)
  {
-@@ -1186,11 +1322,14 @@ static int __init hidp_init(void)
+@@ -1189,11 +1325,14 @@ static int __init hidp_init(void)
  
        BT_INFO("HIDP (Human Interface Emulation) ver %s", VERSION);
  
@@ -408,7 +408,7 @@ here still, but for now we keep this here.
        if (ret)
                goto err_drv;
  
-@@ -1198,13 +1337,16 @@ static int __init hidp_init(void)
+@@ -1201,13 +1340,16 @@ static int __init hidp_init(void)
  err_drv:
        hid_unregister_driver(&hidp_driver);
  err:
@@ -518,7 +518,7 @@ here still, but for now we keep this here.
        struct rfcomm_dlc *dlc = dev->dlc;
 --- a/net/bluetooth/sco.c
 +++ b/net/bluetooth/sco.c
-@@ -428,8 +428,12 @@ static struct sock *sco_sock_alloc(struc
+@@ -429,8 +429,12 @@ static struct sock *sco_sock_alloc(struc
        return sk;
  }
  
@@ -531,7 +531,7 @@ here still, but for now we keep this here.
  {
        struct sock *sk;
  
-@@ -645,7 +649,11 @@ static int sco_sock_sendmsg(struct kiocb
+@@ -646,7 +650,11 @@ static int sco_sock_sendmsg(struct kiocb
        return err;
  }
  
@@ -575,7 +575,7 @@ here still, but for now we keep this here.
  
 --- a/net/bluetooth/hidp/sock.c
 +++ b/net/bluetooth/hidp/sock.c
-@@ -241,8 +241,12 @@ static struct proto hidp_proto = {
+@@ -242,8 +242,12 @@ static struct proto hidp_proto = {
        .obj_size       = sizeof(struct bt_sock)
  };
  
@@ -605,7 +605,7 @@ here still, but for now we keep this here.
  {
        struct sock *sk = sock->sk;
        struct bt_security sec;
-@@ -1073,8 +1080,12 @@ struct sock *l2cap_sock_alloc(struct net
+@@ -1074,8 +1081,12 @@ struct sock *l2cap_sock_alloc(struct net
        return sk;
  }
  
@@ -618,7 +618,7 @@ here still, but for now we keep this here.
  {
        struct sock *sk;
  
-@@ -1086,7 +1097,11 @@ static int l2cap_sock_create(struct net
+@@ -1087,7 +1098,11 @@ static int l2cap_sock_create(struct net
                        sock->type != SOCK_DGRAM && sock->type != SOCK_RAW)
                return -ESOCKTNOSUPPORT;
  
index f7ae882a674b18f23fd72559acd5266eb7c46b2f..141764175f29afc56515f6967376327c9157dff6 100644 (file)
@@ -14,7 +14,7 @@ The patch that introduced this on mac80211 was:
 
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -1222,6 +1222,7 @@ void ieee80211_if_remove(struct ieee8021
+@@ -1229,6 +1229,7 @@ void ieee80211_if_remove(struct ieee8021
   * Remove all interfaces, may only be called at hardware unregistration
   * time because it doesn't do RCU-safe list removals.
   */
@@ -22,9 +22,9 @@ The patch that introduced this on mac80211 was:
  void ieee80211_remove_interfaces(struct ieee80211_local *local)
  {
        struct ieee80211_sub_if_data *sdata, *tmp;
-@@ -1238,6 +1239,22 @@ void ieee80211_remove_interfaces(struct
-       mutex_unlock(&local->iflist_mtx);
+@@ -1246,6 +1247,22 @@ void ieee80211_remove_interfaces(struct
        unregister_netdevice_many(&unreg_list);
+       list_del(&unreg_list);
  }
 +#else
 +void ieee80211_remove_interfaces(struct ieee80211_local *local)
index f10d0f46b9eb71c9727b5b45b1dbd56441fd7bff..9028e79d5ea72e1a4c6145c5e95cbea4bf4212a0 100644 (file)
@@ -42,7 +42,7 @@ Remove this patch if these symbols are backported.
  {
 --- a/drivers/net/wireless/Makefile
 +++ b/drivers/net/wireless/Makefile
-@@ -30,7 +30,7 @@ obj-$(CONFIG_RTL8192CE)              += rtlwifi/
+@@ -30,7 +30,7 @@ obj-$(CONFIG_RTLWIFI)                += rtlwifi/
  obj-$(CONFIG_PCMCIA_RAYCS)    += ray_cs.o
  obj-$(CONFIG_PCMCIA_WL3501)   += wl3501_cs.o
  
index f367d2947134eaccd4482115f16b7ca26436d8b3..0aa0ec6fd1c0f281932a50295f72954056c1cbf8 100644 (file)
@@ -96,7 +96,7 @@ queue by using skb_set_queue_mapping(skb, 0) through ieee80211_tx_skb()
  
 --- a/net/mac80211/tx.c
 +++ b/net/mac80211/tx.c
-@@ -1647,6 +1647,10 @@ static void ieee80211_xmit(struct ieee80
+@@ -1598,6 +1598,10 @@ static void ieee80211_xmit(struct ieee80
                                return;
                        }
  
@@ -107,7 +107,7 @@ queue by using skb_set_queue_mapping(skb, 0) through ieee80211_tx_skb()
        ieee80211_set_qos_hdr(local, skb);
        ieee80211_tx(sdata, skb, false);
        rcu_read_unlock();
-@@ -2139,7 +2143,14 @@ void ieee80211_tx_pending(unsigned long
+@@ -2090,7 +2094,14 @@ void ieee80211_tx_pending(unsigned long
  
                if (skb_queue_empty(&local->pending[i]))
                        list_for_each_entry_rcu(sdata, &local->interfaces, list)
index 0aafb1b3427431ceb0f5130d9c0593c280274863..6d25c32f81e52c9680547fd69916fffe456eeb90 100644 (file)
@@ -13,7 +13,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
 
 --- a/drivers/net/atl1c/atl1c_main.c
 +++ b/drivers/net/atl1c/atl1c_main.c
-@@ -409,7 +409,11 @@ static void atl1c_set_multi(struct net_d
+@@ -410,7 +410,11 @@ static void atl1c_set_multi(struct net_d
  
        /* comoute mc addresses' hash value ,and put it into hash table */
        netdev_for_each_mc_addr(ha, netdev) {
@@ -124,7 +124,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        return mc_filter[0] | ((u64)(mc_filter[1]) << 32);
 --- a/drivers/net/wireless/ath/ar9170/main.c
 +++ b/drivers/net/wireless/ath/ar9170/main.c
-@@ -1607,17 +1607,35 @@ out:
+@@ -1606,17 +1606,35 @@ out:
        return err;
  }
  
@@ -162,7 +162,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  }
 --- a/drivers/net/wireless/ath/ath5k/mac80211-ops.c
 +++ b/drivers/net/wireless/ath/ath5k/mac80211-ops.c
-@@ -340,20 +340,42 @@ ath5k_bss_info_changed(struct ieee80211_
+@@ -322,20 +322,42 @@ ath5k_bss_info_changed(struct ieee80211_
  
  static u64
  ath5k_prepare_multicast(struct ieee80211_hw *hw,
@@ -205,7 +205,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
                pos ^= (val >> 18) ^ (val >> 12) ^ (val >> 6) ^ val;
                pos &= 0x3f;
                mfilt[pos / 32] |= (1 << (pos % 32));
-@@ -362,6 +384,9 @@ ath5k_prepare_multicast(struct ieee80211
+@@ -344,6 +366,9 @@ ath5k_prepare_multicast(struct ieee80211
                * neet to inform below to not reset the mcast */
                /* ath5k_hw_set_mcast_filterindex(ah,
                 *      ha->addr[5]); */
@@ -292,7 +292,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        }
 --- a/drivers/net/wireless/libertas_tf/main.c
 +++ b/drivers/net/wireless/libertas_tf/main.c
-@@ -418,20 +418,36 @@ static int lbtf_op_config(struct ieee802
+@@ -417,20 +417,36 @@ static int lbtf_op_config(struct ieee802
  }
  
  static u64 lbtf_op_prepare_multicast(struct ieee80211_hw *hw,
@@ -331,7 +331,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  }
 --- a/drivers/net/wireless/mwl8k.c
 +++ b/drivers/net/wireless/mwl8k.c
-@@ -2152,15 +2152,21 @@ struct mwl8k_cmd_mac_multicast_adr {
+@@ -2165,15 +2165,21 @@ struct mwl8k_cmd_mac_multicast_adr {
  
  static struct mwl8k_cmd_pkt *
  __mwl8k_cmd_mac_multicast_adr(struct ieee80211_hw *hw, int allmulti,
@@ -353,7 +353,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
        if (allmulti || mc_count > priv->num_mcaddrs) {
                allmulti = 1;
-@@ -2181,13 +2187,27 @@ __mwl8k_cmd_mac_multicast_adr(struct iee
+@@ -2194,13 +2200,27 @@ __mwl8k_cmd_mac_multicast_adr(struct iee
        if (allmulti) {
                cmd->action |= cpu_to_le16(MWL8K_ENABLE_RX_ALL_MULTICAST);
        } else if (mc_count) {
@@ -381,7 +381,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
                }
        }
  
-@@ -4116,7 +4136,11 @@ mwl8k_bss_info_changed(struct ieee80211_
+@@ -4130,7 +4150,11 @@ mwl8k_bss_info_changed(struct ieee80211_
  }
  
  static u64 mwl8k_prepare_multicast(struct ieee80211_hw *hw,
@@ -393,7 +393,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  {
        struct mwl8k_cmd_pkt *cmd;
  
-@@ -4127,7 +4151,11 @@ static u64 mwl8k_prepare_multicast(struc
+@@ -4141,7 +4165,11 @@ static u64 mwl8k_prepare_multicast(struc
         * we'll end up throwing this packet away and creating a new
         * one in mwl8k_configure_filter().
         */
@@ -405,7 +405,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
        return (unsigned long)cmd;
  }
-@@ -4249,7 +4277,11 @@ static void mwl8k_configure_filter(struc
+@@ -4263,7 +4291,11 @@ static void mwl8k_configure_filter(struc
         */
        if (*total_flags & FIF_ALLMULTI) {
                kfree(cmd);
@@ -459,7 +459,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
 --- a/drivers/net/wireless/rtl818x/rtl8180/dev.c
 +++ b/drivers/net/wireless/rtl818x/rtl8180/dev.c
-@@ -815,10 +815,19 @@ static void rtl8180_bss_info_changed(str
+@@ -811,10 +811,19 @@ static void rtl8180_bss_info_changed(str
        }
  }
  
@@ -481,7 +481,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  static void rtl8180_configure_filter(struct ieee80211_hw *dev,
 --- a/drivers/net/wireless/rtl818x/rtl8187/dev.c
 +++ b/drivers/net/wireless/rtl818x/rtl8187/dev.c
-@@ -1194,9 +1194,17 @@ static void rtl8187_bss_info_changed(str
+@@ -1204,9 +1204,17 @@ static void rtl8187_bss_info_changed(str
  }
  
  static u64 rtl8187_prepare_multicast(struct ieee80211_hw *dev,
@@ -501,7 +501,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  static void rtl8187_configure_filter(struct ieee80211_hw *dev,
 --- a/drivers/net/wireless/wl12xx/main.c
 +++ b/drivers/net/wireless/wl12xx/main.c
-@@ -1573,11 +1573,20 @@ struct wl1271_filter_params {
+@@ -1673,11 +1673,20 @@ struct wl1271_filter_params {
        u8 mc_list[ACX_MC_ADDRESS_GROUP_MAX][ETH_ALEN];
  };
  
@@ -522,7 +522,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        struct wl1271 *wl = hw->priv;
  
        if (unlikely(wl->state == WL1271_STATE_OFF))
-@@ -1590,16 +1599,40 @@ static u64 wl1271_op_prepare_multicast(s
+@@ -1690,16 +1699,40 @@ static u64 wl1271_op_prepare_multicast(s
        }
  
        /* update multicast filtering parameters */
@@ -565,8 +565,8 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        return (u64)(unsigned long)fp;
 --- a/drivers/net/wireless/zd1211rw/zd_mac.c
 +++ b/drivers/net/wireless/zd1211rw/zd_mac.c
-@@ -949,17 +949,34 @@ static void set_rx_filter_handler(struct
- }
+@@ -1126,17 +1126,34 @@ static void zd_process_intr(struct work_
  
  static u64 zd_op_prepare_multicast(struct ieee80211_hw *hw,
 +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35))
@@ -602,7 +602,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        return hash.low | ((u64)hash.high << 32);
 --- a/drivers/staging/brcm80211/brcmfmac/dhd_linux.c
 +++ b/drivers/staging/brcm80211/brcmfmac/dhd_linux.c
-@@ -726,7 +726,11 @@ static void _dhd_set_multicast_list(dhd_
+@@ -718,7 +718,11 @@ static void _dhd_set_multicast_list(dhd_
        netdev_for_each_mc_addr(ha, dev) {
                if (!cnt)
                        break;
@@ -616,7 +616,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        }
 --- a/include/net/mac80211.h
 +++ b/include/net/mac80211.h
-@@ -1802,7 +1802,11 @@ struct ieee80211_ops {
+@@ -1826,7 +1826,11 @@ struct ieee80211_ops {
                                 struct ieee80211_bss_conf *info,
                                 u32 changed);
        u64 (*prepare_multicast)(struct ieee80211_hw *hw,
@@ -677,7 +677,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
 --- a/net/mac80211/ieee80211_i.h
 +++ b/net/mac80211/ieee80211_i.h
-@@ -736,7 +736,12 @@ struct ieee80211_local {
+@@ -734,7 +734,12 @@ struct ieee80211_local {
        struct work_struct recalc_smps;
  
        /* aggregated multicast list */
@@ -692,7 +692,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -435,8 +435,13 @@ static void ieee80211_do_stop(struct iee
+@@ -436,8 +436,13 @@ static void ieee80211_do_stop(struct iee
  
        netif_addr_lock_bh(sdata->dev);
        spin_lock_bh(&local->filter_lock);
@@ -706,7 +706,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        spin_unlock_bh(&local->filter_lock);
        netif_addr_unlock_bh(sdata->dev);
  
-@@ -595,7 +600,12 @@ static void ieee80211_set_multicast_list
+@@ -602,7 +607,12 @@ static void ieee80211_set_multicast_list
                sdata->flags ^= IEEE80211_SDATA_PROMISC;
        }
        spin_lock_bh(&local->filter_lock);
@@ -733,7 +733,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        spin_unlock_bh(&local->filter_lock);
  
        /* be a bit nasty */
-@@ -562,9 +566,11 @@ struct ieee80211_hw *ieee80211_alloc_hw(
+@@ -619,9 +623,11 @@ struct ieee80211_hw *ieee80211_alloc_hw(
        local->uapsd_max_sp_len = IEEE80211_DEFAULT_MAX_SP_LEN;
  
        INIT_LIST_HEAD(&local->interfaces);
index 916d31fdace756162f9ba3abf6d404fb780438af..1a00cfc815591a8b29163e67125e5a3bf1f213d7 100644 (file)
@@ -9,7 +9,7 @@ backlog.
 
 --- a/net/bluetooth/l2cap_core.c
 +++ b/net/bluetooth/l2cap_core.c
-@@ -3368,8 +3368,12 @@ static inline int l2cap_data_channel(str
+@@ -3569,8 +3569,12 @@ static inline int l2cap_data_channel(str
                if (!sock_owned_by_user(sk)) {
                        l2cap_ertm_data_rcv(sk, skb);
                } else {
index ce53635e7dcb44d02c9a77ee816661569d7c948a..d26be7932f95c92f599ecfc0fa515106a031a3c4 100644 (file)
@@ -1,7 +1,7 @@
 --- a/drivers/staging/ath6kl/os/linux/ar6000_drv.c
 +++ b/drivers/staging/ath6kl/os/linux/ar6000_drv.c
-@@ -334,12 +334,20 @@ static void ar6000_refill_amsdu_rxbufs(A
- static void ar6000_cleanup_amsdu_rxbufs(AR_SOFTC_T *ar);
+@@ -334,12 +334,20 @@ static void ar6000_refill_amsdu_rxbufs(s
+ static void ar6000_cleanup_amsdu_rxbufs(struct ar6_softc *ar);
  
  static ssize_t
 +#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,34))
@@ -21,7 +21,7 @@
                         struct bin_attribute *bin_attr,
                         char *buf, loff_t pos, size_t count);
  
-@@ -799,7 +807,11 @@ static struct bin_attribute bmi_attr = {
+@@ -797,7 +805,11 @@ static struct bin_attribute bmi_attr = {
  };
  
  static ssize_t
@@ -33,7 +33,7 @@
                        struct bin_attribute *bin_attr,
                        char *buf, loff_t pos, size_t count)
  {
-@@ -826,7 +838,11 @@ ar6000_sysfs_bmi_read(struct file *fp, s
+@@ -824,7 +836,11 @@ ar6000_sysfs_bmi_read(struct file *fp, s
  }
  
  static ssize_t
index dfa6d8b4eccb96811fb35ad9422a5edcef324525..b803f511aeb47023588e6ffa3f24aa1a3f14babc 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
-@@ -1002,6 +1002,10 @@ static void __exit ieee80211_exit(void)
+@@ -1071,6 +1071,10 @@ static void __exit ieee80211_exit(void)
        rc80211_minstrel_ht_exit();
        rc80211_minstrel_exit();
  
index 187c11018a39e3733028601d15ed189220087c32..dcdad198548aa51a82113086f0888ce1a572d875 100644 (file)
@@ -66,7 +66,7 @@ only the wireless stuff.
  obj-$(CONFIG_COMPAT_ZD1211RW)         += zd1211rw/
 @@ -26,13 +16,8 @@ obj-$(CONFIG_RTL8180)               += rtl818x/
  obj-$(CONFIG_RTL8187)         += rtl818x/
- obj-$(CONFIG_RTL8192CE)               += rtlwifi/
+ obj-$(CONFIG_RTLWIFI)         += rtlwifi/
  
 -# 16-bit wireless PCMCIA client drivers
 -obj-$(CONFIG_PCMCIA_RAYCS)    += ray_cs.o