compat-wireless: refresh patches for next-20110614
authorLuis R. Rodriguez <lrodriguez@atheros.com>
Tue, 14 Jun 2011 18:34:34 +0000 (11:34 -0700)
committerLuis R. Rodriguez <lrodriguez@atheros.com>
Tue, 14 Jun 2011 18:34:34 +0000 (11:34 -0700)
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
16 files changed:
patches/01-netdev.patch
patches/02-ksize.patch
patches/03-rfkill.patch
patches/04-netns.patch
patches/06-header-changes.patch
patches/08-rename-config-options.patch
patches/11-dev-pm-ops.patch
patches/16-bluetooth.patch
patches/17-netdev-queue.patch
patches/21-capi-proc_fops.patch
patches/22-multiqueue.patch
patches/25-multicast-list_head.patch
patches/26-sdio-quirks.patch
patches/29-sdio_no_suspend.patch
patches/31-backport-sk_add_backlog.patch
patches/40-netdev-hw-features.patch

index 3b5e33aef3ec7380c1c8dda1e46e926645609105..50998e2c71bb67b39e80f519e8179c951adbeca9 100644 (file)
@@ -92,11 +92,11 @@ without creating a headache on maintenance of the pathes.
        ndev->needed_tailroom = IEEE80211_ENCRYPT_TAILROOM;
 +#endif
  
-       ieee80211_assign_perm_addr(local, ndev, type);
-       memcpy(ndev->dev_addr, ndev->perm_addr, ETH_ALEN);
+       ret = dev_alloc_name(ndev, ndev->name);
+       if (ret < 0)
 --- a/drivers/net/b44.c
 +++ b/drivers/net/b44.c
-@@ -2164,7 +2164,7 @@ static int __devinit b44_init_one(struct
+@@ -2165,7 +2165,7 @@ static int __devinit b44_init_one(struct
        bp->rx_pending = B44_DEF_RX_RING_PENDING;
        bp->tx_pending = B44_DEF_TX_RING_PENDING;
  
@@ -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
-@@ -826,7 +826,7 @@ struct lbs_private *lbs_add_card(void *c
+@@ -827,7 +827,7 @@ struct lbs_private *lbs_add_card(void *c
        wdev->netdev = dev;
        priv->dev = dev;
  
@@ -228,7 +228,7 @@ without creating a headache on maintenance of the pathes.
        dev->flags |= IFF_BROADCAST | IFF_MULTICAST;
 --- a/drivers/net/wireless/libertas/mesh.c
 +++ b/drivers/net/wireless/libertas/mesh.c
-@@ -387,7 +387,7 @@ int lbs_add_mesh(struct lbs_private *pri
+@@ -388,7 +388,7 @@ int lbs_add_mesh(struct lbs_private *pri
        mesh_dev->ml_priv = priv;
        priv->mesh_dev = mesh_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
-@@ -1200,7 +1200,7 @@ static const struct net_device_ops hwsim
+@@ -1228,7 +1228,7 @@ static const struct net_device_ops hwsim
  
  static void hwsim_mon_setup(struct net_device *dev)
  {
@@ -267,7 +267,7 @@ without creating a headache on maintenance of the pathes.
        dev->tx_queue_len = 0;
 --- a/drivers/net/wireless/mwifiex/main.c
 +++ b/drivers/net/wireless/mwifiex/main.c
-@@ -668,7 +668,7 @@ static const struct net_device_ops mwifi
+@@ -652,7 +652,7 @@ static const struct net_device_ops mwifi
  static void
  mwifiex_init_priv_params(struct mwifiex_private *priv, struct net_device *dev)
  {
@@ -336,7 +336,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
-@@ -2598,7 +2598,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;
index 4b97319f33f4f2c3b78d3aa2ef612792078a8bd5..cd42d9fed39e7c1af5fbf80b3612f19edfa8291e 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
-@@ -502,9 +502,14 @@ cfg80211_bss_update(struct cfg80211_regi
+@@ -507,9 +507,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;
-@@ -538,9 +543,14 @@ cfg80211_bss_update(struct cfg80211_regi
+@@ -543,9 +548,14 @@ cfg80211_bss_update(struct cfg80211_regi
                                (found->pub.information_elements ==
                                 found->pub.beacon_ies);
  
index a13dd9a7a5897d6881de9b394df59f86ab324ee3..88f022d619ea4f9a6d972f0cada6d0bbcf6e6c6c 100644 (file)
@@ -30,7 +30,7 @@ This would do the policing from within mac80211.
 
 --- a/net/rfkill/Makefile
 +++ b/net/rfkill/Makefile
-@@ -2,7 +2,7 @@
+@@ -2,8 +2,8 @@
  # Makefile for the RF switch subsystem.
  #
  
@@ -41,6 +41,7 @@ This would do the policing from within mac80211.
 +rfkill_backport-$(CONFIG_RFKILL_BACKPORT_INPUT)       += input.o
 +obj-$(CONFIG_RFKILL_BACKPORT)         += rfkill_backport.o
  obj-$(CONFIG_RFKILL_REGULATOR)        += rfkill-regulator.o
+ obj-$(CONFIG_RFKILL_GPIO)     += rfkill-gpio.o
 --- a/net/rfkill/input.c
 +++ b/net/rfkill/input.c
 @@ -232,7 +232,7 @@ static int rfkill_connect(struct input_h
@@ -54,7 +55,7 @@ This would do the policing from within mac80211.
        error = input_register_handle(handle);
 --- a/net/rfkill/core.c
 +++ b/net/rfkill/core.c
-@@ -658,7 +658,7 @@ static int rfkill_resume(struct device *
+@@ -805,7 +805,7 @@ static int rfkill_resume(struct device *
  }
  
  static struct class rfkill_class = {
index b4c5f0782ff36fe3f004a8048dafd049b10f0f6d..d7faf4baa6d25e4a444fc0e2ca07bfde3eff64ad 100644 (file)
@@ -6,7 +6,7 @@ files...
 
 --- a/net/wireless/nl80211.c
 +++ b/net/wireless/nl80211.c
-@@ -4593,7 +4593,9 @@ static int nl80211_wiphy_netns(struct sk
+@@ -4657,7 +4657,9 @@ static int nl80211_wiphy_netns(struct sk
        if (!net_eq(wiphy_net(&rdev->wiphy), net))
                err = cfg80211_switch_netns(rdev, net);
  
index 6e4ae5670ca3a487101469fb4b15a811501f6906..f311c406e80130f76ec38635cd0eac23ae9db5be 100644 (file)
@@ -40,7 +40,7 @@ cases.
  #include <linux/vmalloc.h>
 --- a/drivers/net/wireless/wl1251/spi.c
 +++ b/drivers/net/wireless/wl1251/spi.c
-@@ -23,6 +23,9 @@
+@@ -24,6 +24,9 @@
  #include <linux/module.h>
  #include <linux/slab.h>
  #include <linux/crc7.h>
index 3fa9c41b03f07eec768e68593a76d10d2f5c49ec..0eb1fb22fffda147fd832491a925b00e695e3161 100644 (file)
@@ -35,18 +35,18 @@ CONFIG_BT_HIDP does not build with older kernel versions.
  iwl4965-objs          += iwl-4965-lib.o iwl-4965-rx.o iwl-4965-calib.o
 --- a/drivers/net/wireless/iwlegacy/iwl-dev.h
 +++ b/drivers/net/wireless/iwlegacy/iwl-dev.h
-@@ -1211,7 +1211,7 @@ struct iwl_priv {
+@@ -1163,7 +1163,7 @@ struct iwl_priv {
  
                } _3945;
  #endif
 -#if defined(CONFIG_IWL4965) || defined(CONFIG_IWL4965_MODULE)
 +#if defined(CONFIG_COMPAT_IWL4965) || defined(CONFIG_COMPAT_IWL4965_MODULE)
                struct {
-                       /*
-                        * reporting the number of tids has AGG on. 0 means
+                       struct iwl_rx_phy_res last_phy_res;
+                       bool last_phy_res_valid;
 --- 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
+@@ -3212,10 +3212,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) = {
@@ -69,7 +69,7 @@ CONFIG_BT_HIDP does not build with older kernel versions.
                zd_rf_al2230.o zd_rf_rf2959.o \
 --- a/include/net/bluetooth/bluetooth.h
 +++ b/include/net/bluetooth/bluetooth.h
-@@ -213,7 +213,7 @@ extern void bt_sysfs_cleanup(void);
+@@ -214,7 +214,7 @@ extern void bt_sysfs_cleanup(void);
  
  extern struct dentry *bt_debugfs;
  
@@ -78,7 +78,7 @@ CONFIG_BT_HIDP does not build with older kernel versions.
  int l2cap_init(void);
  void l2cap_exit(void);
  #else
-@@ -227,7 +227,7 @@ static inline void l2cap_exit(void)
+@@ -228,7 +228,7 @@ static inline void l2cap_exit(void)
  }
  #endif
  
index 5fe39992f90704761114a2094bc7f88494e61f45..acf2dc8c10cd21749992d859a0803238705b0b3f 100644 (file)
@@ -9,7 +9,7 @@ calls on compat code with only slight modifications.
 
 --- a/drivers/net/atl1c/atl1c_main.c
 +++ b/drivers/net/atl1c/atl1c_main.c
-@@ -2878,6 +2878,9 @@ static struct pci_error_handlers atl1c_e
+@@ -2880,6 +2880,9 @@ static struct pci_error_handlers atl1c_e
  
  static SIMPLE_DEV_PM_OPS(atl1c_pm_ops, atl1c_suspend, atl1c_resume);
  
@@ -19,7 +19,7 @@ calls on compat code with only slight modifications.
  static struct pci_driver atl1c_driver = {
        .name     = atl1c_driver_name,
        .id_table = atl1c_pci_tbl,
-@@ -2885,7 +2888,12 @@ static struct pci_driver atl1c_driver =
+@@ -2887,7 +2890,12 @@ static struct pci_driver atl1c_driver =
        .remove   = __devexit_p(atl1c_remove),
        .shutdown = atl1c_shutdown,
        .err_handler = &atl1c_err_handler,
@@ -119,7 +119,7 @@ calls on compat code with only slight modifications.
  int ath_pci_init(void)
 --- a/drivers/net/wireless/libertas/if_spi.c
 +++ b/drivers/net/wireless/libertas/if_spi.c
-@@ -1253,6 +1253,7 @@ static int __devexit libertas_spi_remove
+@@ -1255,6 +1255,7 @@ static int __devexit libertas_spi_remove
        return 0;
  }
  
@@ -127,7 +127,7 @@ calls on compat code with only slight modifications.
  static int if_spi_suspend(struct device *dev)
  {
        struct spi_device *spi = to_spi_device(dev);
-@@ -1286,6 +1287,7 @@ static const struct dev_pm_ops if_spi_pm
+@@ -1288,6 +1289,7 @@ static const struct dev_pm_ops if_spi_pm
        .suspend        = if_spi_suspend,
        .resume         = if_spi_resume,
  };
@@ -135,7 +135,7 @@ calls on compat code with only slight modifications.
  
  static struct spi_driver libertas_spi_driver = {
        .probe  = if_spi_probe,
-@@ -1294,7 +1296,9 @@ static struct spi_driver libertas_spi_dr
+@@ -1296,7 +1298,9 @@ static struct spi_driver libertas_spi_dr
                .name   = "libertas_spi",
                .bus    = &spi_bus_type,
                .owner  = THIS_MODULE,
@@ -147,7 +147,7 @@ calls on compat code with only slight modifications.
  
 --- a/drivers/net/wireless/iwlegacy/iwl-core.c
 +++ b/drivers/net/wireless/iwlegacy/iwl-core.c
-@@ -2050,15 +2050,17 @@ int iwl_legacy_pci_resume(struct device
+@@ -2015,15 +2015,17 @@ int iwl_legacy_pci_resume(struct device
  }
  EXPORT_SYMBOL(iwl_legacy_pci_resume);
  
@@ -175,7 +175,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
-@@ -507,7 +507,12 @@ __le32 iwl_legacy_add_beacon_time(struct
+@@ -498,7 +498,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);
@@ -190,7 +190,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
-@@ -4236,7 +4236,12 @@ static struct pci_driver iwl3945_driver
+@@ -3961,7 +3961,12 @@ static struct pci_driver iwl3945_driver
        .id_table = iwl3945_hw_card_ids,
        .probe = iwl3945_pci_probe,
        .remove = __devexit_p(iwl3945_pci_remove),
@@ -205,7 +205,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
+@@ -3226,7 +3226,12 @@ static struct pci_driver iwl4965_driver
        .id_table = iwl4965_hw_card_ids,
        .probe = iwl4965_pci_probe,
        .remove = __devexit_p(iwl4965_pci_remove),
@@ -220,7 +220,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
-@@ -3919,7 +3919,12 @@ static struct pci_driver iwl_driver = {
+@@ -4001,7 +4001,12 @@ static struct pci_driver iwl_driver = {
        .id_table = iwl_hw_card_ids,
        .probe = iwl_pci_probe,
        .remove = __devexit_p(iwl_pci_remove),
@@ -235,7 +235,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
-@@ -2021,13 +2021,9 @@ int iwl_pci_resume(struct device *device
+@@ -2014,13 +2014,9 @@ int iwl_pci_resume(struct device *device
        return 0;
  }
  
@@ -255,7 +255,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
-@@ -504,7 +504,12 @@ __le32 iwl_add_beacon_time(struct iwl_pr
+@@ -502,7 +502,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 6b99d12cd0a6d312785f4e1811a4a0aeefa66e09..95a09f41eb534aaff2af923e9ce78ec66522d505 100644 (file)
@@ -17,7 +17,7 @@ here still, but for now we keep this here.
        tty_driver_flush_buffer(tty);
  
        return 0;
-@@ -403,7 +408,9 @@ static int hci_uart_register_dev(struct
+@@ -398,7 +403,9 @@ static int hci_uart_register_dev(struct
        hdev->flush = hci_uart_flush;
        hdev->send  = hci_uart_send_frame;
        hdev->destruct = hci_uart_destruct;
@@ -27,7 +27,7 @@ here still, but for now we keep this here.
  
        hdev->owner = THIS_MODULE;
  
-@@ -503,7 +510,11 @@ static int hci_uart_tty_ioctl(struct tty
+@@ -498,7 +505,11 @@ static int hci_uart_tty_ioctl(struct tty
                return hu->hdev_flags;
  
        default:
@@ -80,7 +80,7 @@ here still, but for now we keep this here.
                err = put_user(amount, (int __user *) arg);
 --- a/net/bluetooth/cmtp/capi.c
 +++ b/net/bluetooth/cmtp/capi.c
-@@ -385,7 +385,11 @@ static void cmtp_reset_ctr(struct capi_c
+@@ -384,7 +384,11 @@ static void cmtp_reset_ctr(struct capi_c
  
        BT_DBG("ctrl %p", ctrl);
  
@@ -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
-@@ -429,8 +429,12 @@ static struct sock *sco_sock_alloc(struc
+@@ -438,8 +438,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;
  
-@@ -646,7 +650,11 @@ static int sco_sock_sendmsg(struct kiocb
+@@ -655,7 +659,11 @@ static int sco_sock_sendmsg(struct kiocb
        return err;
  }
  
@@ -590,7 +590,7 @@ here still, but for now we keep this here.
  
 --- a/net/bluetooth/l2cap_sock.c
 +++ b/net/bluetooth/l2cap_sock.c
-@@ -579,7 +579,14 @@ static int l2cap_sock_setsockopt_old(str
+@@ -557,7 +557,14 @@ static int l2cap_sock_setsockopt_old(str
        return err;
  }
  
@@ -605,7 +605,7 @@ here still, but for now we keep this here.
  {
        struct sock *sk = sock->sk;
        struct l2cap_chan *chan = l2cap_pi(sk)->chan;
-@@ -1027,8 +1034,12 @@ struct sock *l2cap_sock_alloc(struct net
+@@ -950,8 +957,12 @@ static struct sock *l2cap_sock_alloc(str
        return sk;
  }
  
@@ -617,8 +617,8 @@ here still, but for now we keep this here.
 +#endif
  {
        struct sock *sk;
-       struct l2cap_chan *chan;
-@@ -1041,7 +1052,11 @@ static int l2cap_sock_create(struct net
+@@ -963,7 +974,11 @@ static int l2cap_sock_create(struct net
                        sock->type != SOCK_DGRAM && sock->type != SOCK_RAW)
                return -ESOCKTNOSUPPORT;
  
index 9343db57d5f55c126f69378d01002e33bebee0f3..5c6090bc62afcce71c6af29867779ccdf449096c 100644 (file)
@@ -14,7 +14,7 @@ The patch that introduced this on mac80211 was:
 
 --- a/net/mac80211/iface.c
 +++ b/net/mac80211/iface.c
-@@ -1226,6 +1226,7 @@ void ieee80211_if_remove(struct ieee8021
+@@ -1230,6 +1230,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,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;
-@@ -1243,6 +1244,22 @@ void ieee80211_remove_interfaces(struct
+@@ -1247,6 +1248,22 @@ void ieee80211_remove_interfaces(struct
        unregister_netdevice_many(&unreg_list);
        list_del(&unreg_list);
  }
index 9cd9f4cd0966fe0979ec17d654450ff7e8b9faaf..2f2ca7de5e7b3f960037965ea15273ddfaec7c82 100644 (file)
@@ -14,7 +14,7 @@ proc_fops: convert drivers/isdn/ to seq_file
  #include <linux/types.h>
  #include <linux/errno.h>
  #include <linux/kernel.h>
-@@ -522,6 +524,7 @@ static char *cmtp_procinfo(struct capi_c
+@@ -521,6 +523,7 @@ static char *cmtp_procinfo(struct capi_c
        return "CAPI Message Transport Protocol";
  }
  
@@ -22,7 +22,7 @@ proc_fops: convert drivers/isdn/ to seq_file
  static int cmtp_proc_show(struct seq_file *m, void *v)
  {
        struct capi_ctr *ctrl = m->private;
-@@ -554,6 +557,36 @@ static const struct file_operations cmtp
+@@ -553,6 +556,36 @@ static const struct file_operations cmtp
        .release        = single_release,
  };
  
@@ -59,7 +59,7 @@ proc_fops: convert drivers/isdn/ to seq_file
  int cmtp_attach_device(struct cmtp_session *session)
  {
        unsigned char buf[4];
-@@ -592,7 +625,11 @@ int cmtp_attach_device(struct cmtp_sessi
+@@ -591,7 +624,11 @@ int cmtp_attach_device(struct cmtp_sessi
        session->ctrl.send_message  = cmtp_send_message;
  
        session->ctrl.procinfo      = cmtp_procinfo;
index c61d19e5476a3a8b0558f0483a010f954c4c0d2c..8f8c563f3ea15b39ce69f8da83fc31227b38ff92 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
-@@ -1591,6 +1591,10 @@ static void ieee80211_xmit(struct ieee80
+@@ -1596,6 +1596,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();
-@@ -2084,7 +2088,14 @@ void ieee80211_tx_pending(unsigned long
+@@ -2089,7 +2093,14 @@ void ieee80211_tx_pending(unsigned long
  
                if (skb_queue_empty(&local->pending[i]))
                        list_for_each_entry_rcu(sdata, &local->interfaces, list)
index 90dc9b4cd8134b68d9146a5312fcaffcacc346a9..f1227e8b6bfae918f030d319d98348318adf56c7 100644 (file)
@@ -69,7 +69,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  }
 --- a/drivers/net/b44.c
 +++ b/drivers/net/b44.c
-@@ -1688,7 +1688,11 @@ static int __b44_load_mcast(struct b44 *
+@@ -1689,7 +1689,11 @@ static int __b44_load_mcast(struct b44 *
        netdev_for_each_mc_addr(ha, dev) {
                if (i == num_ents)
                        break;
@@ -83,7 +83,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  }
 --- a/drivers/net/wireless/adm8211.c
 +++ b/drivers/net/wireless/adm8211.c
-@@ -1317,19 +1317,37 @@ static void adm8211_bss_info_changed(str
+@@ -1318,19 +1318,37 @@ static void adm8211_bss_info_changed(str
  }
  
  static u64 adm8211_prepare_multicast(struct ieee80211_hw *hw,
@@ -217,7 +217,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  }
 --- a/drivers/net/wireless/libertas/main.c
 +++ b/drivers/net/wireless/libertas/main.c
-@@ -235,18 +235,34 @@ static int lbs_add_mcast_addrs(struct cm
+@@ -236,18 +236,34 @@ static int lbs_add_mcast_addrs(struct cm
        netif_addr_lock_bh(dev);
        cnt = netdev_mc_count(dev);
        netdev_for_each_mc_addr(ha, dev) {
@@ -254,7 +254,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        }
 --- a/drivers/net/wireless/libertas_tf/main.c
 +++ b/drivers/net/wireless/libertas_tf/main.c
-@@ -417,20 +417,36 @@ static int lbtf_op_config(struct ieee802
+@@ -418,20 +418,36 @@ static int lbtf_op_config(struct ieee802
  }
  
  static u64 lbtf_op_prepare_multicast(struct ieee80211_hw *hw,
@@ -325,7 +325,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        p += sprintf(p, "num_tx_bytes = %lu\n", priv->stats.tx_bytes);
 --- a/drivers/net/wireless/mwl8k.c
 +++ b/drivers/net/wireless/mwl8k.c
-@@ -2537,15 +2537,21 @@ struct mwl8k_cmd_mac_multicast_adr {
+@@ -2538,15 +2538,21 @@ struct mwl8k_cmd_mac_multicast_adr {
  
  static struct mwl8k_cmd_pkt *
  __mwl8k_cmd_mac_multicast_adr(struct ieee80211_hw *hw, int allmulti,
@@ -347,7 +347,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
        if (allmulti || mc_count > priv->num_mcaddrs) {
                allmulti = 1;
-@@ -2566,13 +2572,27 @@ __mwl8k_cmd_mac_multicast_adr(struct iee
+@@ -2567,13 +2573,27 @@ __mwl8k_cmd_mac_multicast_adr(struct iee
        if (allmulti) {
                cmd->action |= cpu_to_le16(MWL8K_ENABLE_RX_ALL_MULTICAST);
        } else if (mc_count) {
@@ -375,7 +375,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
                }
        }
  
-@@ -4723,7 +4743,11 @@ mwl8k_bss_info_changed(struct ieee80211_
+@@ -4724,7 +4744,11 @@ mwl8k_bss_info_changed(struct ieee80211_
  }
  
  static u64 mwl8k_prepare_multicast(struct ieee80211_hw *hw,
@@ -387,7 +387,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  {
        struct mwl8k_cmd_pkt *cmd;
  
-@@ -4734,7 +4758,11 @@ static u64 mwl8k_prepare_multicast(struc
+@@ -4735,7 +4759,11 @@ static u64 mwl8k_prepare_multicast(struc
         * we'll end up throwing this packet away and creating a new
         * one in mwl8k_configure_filter().
         */
@@ -399,7 +399,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
        return (unsigned long)cmd;
  }
-@@ -4856,7 +4884,11 @@ static void mwl8k_configure_filter(struc
+@@ -4857,7 +4885,11 @@ static void mwl8k_configure_filter(struc
         */
        if (*total_flags & FIF_ALLMULTI) {
                kfree(cmd);
@@ -498,7 +498,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  
 --- a/drivers/net/wireless/rtl818x/rtl8180/dev.c
 +++ b/drivers/net/wireless/rtl818x/rtl8180/dev.c
-@@ -811,10 +811,19 @@ static void rtl8180_bss_info_changed(str
+@@ -812,10 +812,19 @@ static void rtl8180_bss_info_changed(str
        }
  }
  
@@ -540,7 +540,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
-@@ -2085,11 +2085,20 @@ struct wl1271_filter_params {
+@@ -2086,11 +2086,20 @@ struct wl1271_filter_params {
        u8 mc_list[ACX_MC_ADDRESS_GROUP_MAX][ETH_ALEN];
  };
  
@@ -561,7 +561,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        struct wl1271 *wl = hw->priv;
  
        if (unlikely(wl->state == WL1271_STATE_OFF))
-@@ -2102,16 +2111,40 @@ static u64 wl1271_op_prepare_multicast(s
+@@ -2103,16 +2112,40 @@ static u64 wl1271_op_prepare_multicast(s
        }
  
        /* update multicast filtering parameters */
@@ -641,7 +641,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
-@@ -714,7 +714,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;
@@ -655,7 +655,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        }
 --- a/include/net/mac80211.h
 +++ b/include/net/mac80211.h
-@@ -1882,7 +1882,11 @@ struct ieee80211_ops {
+@@ -1883,7 +1883,11 @@ struct ieee80211_ops {
                                 struct ieee80211_bss_conf *info,
                                 u32 changed);
        u64 (*prepare_multicast)(struct ieee80211_hw *hw,
index 57df7b537c56a90af5109d0dbae1bcf43b2623bb..a7fc6fe9f70ade264e923222f25dc093add16994 100644 (file)
@@ -2,15 +2,15 @@ The quirks attribute is not available on older kernels.
 
 --- a/drivers/net/wireless/libertas/if_sdio.c
 +++ b/drivers/net/wireless/libertas/if_sdio.c
-@@ -1012,6 +1012,7 @@ static int if_sdio_probe(struct sdio_fun
+@@ -1039,6 +1039,7 @@ static int if_sdio_probe(struct sdio_fun
        if (ret)
-               goto disable;
+               goto release;
  
 +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,32))
        /* For 1-bit transfers to the 8686 model, we need to enable the
         * interrupt flag in the CCCR register. Set the MMC_QUIRK_LENIENT_FN0
         * bit to allow access to non-vendor registers. */
-@@ -1030,6 +1031,7 @@ static int if_sdio_probe(struct sdio_fun
+@@ -1057,6 +1058,7 @@ static int if_sdio_probe(struct sdio_fun
                if (ret)
                        goto release_int;
        }
@@ -20,7 +20,7 @@ The quirks attribute is not available on older kernels.
        if (ret)
 --- a/drivers/net/wireless/mwifiex/sdio.c
 +++ b/drivers/net/wireless/mwifiex/sdio.c
-@@ -60,7 +60,9 @@ mwifiex_sdio_probe(struct sdio_func *fun
+@@ -77,7 +77,9 @@ mwifiex_sdio_probe(struct sdio_func *fun
  
        card->func = func;
  
index 8a2c4dd5b625ba766ee9100f0559595b2f6d340e..d6a67132f482cfe55fe874742e950464306b2249 100644 (file)
@@ -5,7 +5,7 @@ suspend and resume that are not backported.
 
 --- a/drivers/net/wireless/libertas/if_sdio.c
 +++ b/drivers/net/wireless/libertas/if_sdio.c
-@@ -1198,6 +1198,7 @@ static void if_sdio_remove(struct sdio_f
+@@ -1241,6 +1241,7 @@ static void if_sdio_remove(struct sdio_f
        lbs_deb_leave(LBS_DEB_SDIO);
  }
  
@@ -13,7 +13,7 @@ suspend and resume that are not backported.
  static int if_sdio_suspend(struct device *dev)
  {
        struct sdio_func *func = dev_to_sdio_func(dev);
-@@ -1251,15 +1252,18 @@ static const struct dev_pm_ops if_sdio_p
+@@ -1294,15 +1295,18 @@ static const struct dev_pm_ops if_sdio_p
        .suspend        = if_sdio_suspend,
        .resume         = if_sdio_resume,
  };
index fb722445e8fec1d23d0a861e1cec916f02b2c41c..ee904b60565f8c3df3c65afae54e4cc1ed1b9fe5 100644 (file)
@@ -9,7 +9,7 @@ backlog.
 
 --- a/net/bluetooth/l2cap_core.c
 +++ b/net/bluetooth/l2cap_core.c
-@@ -3698,8 +3698,12 @@ static inline int l2cap_data_channel(str
+@@ -3905,8 +3905,12 @@ static inline int l2cap_data_channel(str
                if (!sock_owned_by_user(sk)) {
                        l2cap_ertm_data_rcv(sk, skb);
                } else {
index 14d6dd7a81198729ae90dbf21c9f451d627dbf75..7e5e9c522aaf0977f6dc5ff1e227e23fee75fd2c 100644 (file)
@@ -80,7 +80,7 @@ Date:   Thu Apr 7 07:32:18 2011 +0000
                atl1c_up(adapter);
                clear_bit(__AT_RESETTING, &adapter->flags);
                if (adapter->hw.ctrl_flags & ATL1C_FPGA_VERSION) {
-@@ -2586,7 +2599,9 @@ static const struct net_device_ops atl1c
+@@ -2588,7 +2601,9 @@ static const struct net_device_ops atl1c
        .ndo_set_mac_address    = atl1c_set_mac_addr,
        .ndo_set_multicast_list = atl1c_set_multi,
        .ndo_change_mtu         = atl1c_change_mtu,
@@ -90,7 +90,7 @@ Date:   Thu Apr 7 07:32:18 2011 +0000
        .ndo_do_ioctl           = atl1c_ioctl,
        .ndo_tx_timeout         = atl1c_tx_timeout,
        .ndo_get_stats          = atl1c_get_stats,
-@@ -2607,6 +2622,7 @@ static int atl1c_init_netdev(struct net_
+@@ -2609,6 +2624,7 @@ static int atl1c_init_netdev(struct net_
        atl1c_set_ethtool_ops(netdev);
  
        /* TODO: add when ready */
@@ -98,7 +98,7 @@ Date:   Thu Apr 7 07:32:18 2011 +0000
        netdev->hw_features =   NETIF_F_SG         |
                                NETIF_F_HW_CSUM    |
                                NETIF_F_HW_VLAN_TX |
-@@ -2614,6 +2630,14 @@ static int atl1c_init_netdev(struct net_
+@@ -2616,6 +2632,14 @@ static int atl1c_init_netdev(struct net_
                                NETIF_F_TSO6;
        netdev->features =      netdev->hw_features |
                                NETIF_F_HW_VLAN_RX;