compat-wireless: refresh patches
authorLuis R. Rodriguez <lrodriguez@atheros.com>
Mon, 22 Nov 2010 21:25:46 +0000 (13:25 -0800)
committerLuis R. Rodriguez <lrodriguez@atheros.com>
Mon, 22 Nov 2010 21:25:46 +0000 (13:25 -0800)
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
15 files changed:
patches/01-netdev.patch
patches/03-rfkill.patch
patches/04-netns.patch
patches/05-usb.patch
patches/09-threaded-irq.patch
patches/11-dev-pm-ops.patch
patches/15-symbol-export-conflicts.patch
patches/16-bluetooth.patch
patches/19-kfifo.patch
patches/20-pcidev.patch
patches/22-multiqueue.patch
patches/25-multicast-list_head.patch
patches/27-hermes-read-pda-conflict.patch
patches/30-bridge-port.patch
patches/31-backport-sk_add_backlog.patch

index abdd2864b4e2732a48e1de7cd822d0a1317a5065..7b34c6672a14b75ff7e53dd23981ae4e405e8e52 100644 (file)
@@ -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
-@@ -3137,7 +3137,7 @@ static int rndis_wlan_bind(struct usbnet
+@@ -3294,7 +3294,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.
         */
@@ -267,7 +267,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
-@@ -1100,7 +1100,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)
  {
index baf49e4ca13304108207c04f97bf51165afc469e..a46bdf67e966e89522bc2aa119bd223ea5e28c43 100644 (file)
@@ -42,7 +42,7 @@ This would do the policing from within mac80211.
 +obj-$(CONFIG_RFKILL_BACKPORT)         += rfkill_backport.o
 --- a/net/rfkill/input.c
 +++ b/net/rfkill/input.c
-@@ -232,7 +236,7 @@ static int rfkill_connect(struct input_h
+@@ -232,7 +232,7 @@ static int rfkill_connect(struct input_h
  
        handle->dev = dev;
        handle->handler = handler;
@@ -53,7 +53,7 @@ This would do the policing from within mac80211.
        error = input_register_handle(handle);
 --- a/net/rfkill/core.c
 +++ b/net/rfkill/core.c
-@@ -819,7 +819,7 @@ static int rfkill_resume(struct device *
+@@ -805,7 +805,7 @@ static int rfkill_resume(struct device *
  }
  
  static struct class rfkill_class = {
@@ -62,4 +62,3 @@ This would do the policing from within mac80211.
        .dev_release    = rfkill_release,
        .dev_attrs      = rfkill_dev_attrs,
        .dev_uevent     = rfkill_dev_uevent,
-
index fbd9164a28a2c9d8bb3eef56ed2a91808def6e1e..6b89010cc39fa7ee1ffdadae9f034fc80cb5cdc0 100644 (file)
@@ -6,7 +6,7 @@ files...
 
 --- a/net/wireless/nl80211.c
 +++ b/net/wireless/nl80211.c
-@@ -3904,7 +3904,9 @@ static int nl80211_wiphy_netns(struct sk
+@@ -3941,7 +3941,9 @@ static int nl80211_wiphy_netns(struct sk
        if (!net_eq(wiphy_net(&rdev->wiphy), net))
                err = cfg80211_switch_netns(rdev, net);
  
index 71b65d5104ab275008e4734e7714f616ed241b0c..08a09b831d07742622dba3dc7145d296d9c72d8d 100644 (file)
@@ -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
-@@ -1065,7 +1065,9 @@ static struct usb_driver ath9k_hif_usb_d
+@@ -1074,7 +1074,9 @@ static struct usb_driver ath9k_hif_usb_d
        .reset_resume = ath9k_hif_usb_resume,
  #endif
        .id_table = ath9k_hif_usb_ids,
index c75bbcb4dea1bf710b28cfb8b97f92af4c0adfcf..b8233eb29d1ec433552c579d2addf6a657dd60ad 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
-@@ -3922,8 +3922,13 @@ redo:
+@@ -3946,8 +3946,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;
-@@ -3963,9 +3968,17 @@ static int b43_wireless_core_start(struc
+@@ -3987,9 +3992,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;
-@@ -4694,6 +4707,10 @@ static int b43_setup_bands(struct b43_wl
+@@ -4718,6 +4731,10 @@ static int b43_setup_bands(struct b43_wl
  
  static void b43_wireless_core_detach(struct b43_wldev *dev)
  {
index 6f00db82d47480104ccb9b235ae4e433578cf757..d374673e6c6e433205a3d39416c3ac6c9c5741ed 100644 (file)
@@ -9,7 +9,7 @@ calls on compat code with only slight modifications.
 
 --- a/drivers/net/wireless/ath/ath5k/base.c
 +++ b/drivers/net/wireless/ath/ath5k/base.c
-@@ -3732,6 +3732,34 @@ static int ath5k_pci_resume(struct devic
+@@ -3758,6 +3758,34 @@ static int ath5k_pci_resume(struct devic
        return 0;
  }
  
@@ -44,7 +44,7 @@ calls on compat code with only slight modifications.
  static SIMPLE_DEV_PM_OPS(ath5k_pm_ops, ath5k_pci_suspend, ath5k_pci_resume);
  #define ATH5K_PM_OPS  (&ath5k_pm_ops)
  #else
-@@ -3743,7 +3771,12 @@ static struct pci_driver ath5k_pci_drive
+@@ -3769,7 +3797,12 @@ static struct pci_driver ath5k_pci_drive
        .id_table       = ath5k_pci_id_table,
        .probe          = ath5k_pci_probe,
        .remove         = __devexit_p(ath5k_pci_remove),
@@ -59,7 +59,7 @@ calls on compat code with only slight modifications.
  /*
 --- a/drivers/net/wireless/ath/ath9k/pci.c
 +++ b/drivers/net/wireless/ath/ath9k/pci.c
-@@ -284,14 +284,36 @@ static int ath_pci_resume(struct device
+@@ -300,14 +300,36 @@ static int ath_pci_resume(struct device
        return 0;
  }
  
@@ -104,7 +104,7 @@ calls on compat code with only slight modifications.
  
  #define ATH9K_PM_OPS  (&ath9k_pm_ops)
  
-@@ -309,7 +331,12 @@ static struct pci_driver ath_pci_driver
+@@ -325,7 +347,12 @@ static struct pci_driver ath_pci_driver
        .id_table   = ath_pci_id_table,
        .probe      = ath_pci_probe,
        .remove     = ath_pci_remove,
@@ -119,7 +119,7 @@ calls on compat code with only slight modifications.
  int ath_pci_init(void)
 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c
 +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c
-@@ -4534,7 +4534,12 @@ static struct pci_driver iwl_driver = {
+@@ -4496,7 +4496,12 @@ static struct pci_driver iwl_driver = {
        .id_table = iwl_hw_card_ids,
        .probe = iwl_pci_probe,
        .remove = __devexit_p(iwl_pci_remove),
@@ -134,7 +134,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
-@@ -2188,14 +2188,42 @@ int iwl_pci_resume(struct device *device
+@@ -2094,14 +2094,42 @@ int iwl_pci_resume(struct device *device
  }
  EXPORT_SYMBOL(iwl_pci_resume);
  
@@ -187,7 +187,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
-@@ -615,7 +615,12 @@ __le32 iwl_add_beacon_time(struct iwl_pr
+@@ -624,7 +624,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);
@@ -202,7 +202,7 @@ calls on compat code with only slight modifications.
  
 --- a/drivers/net/wireless/iwlwifi/iwl3945-base.c
 +++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c
-@@ -4279,7 +4279,12 @@ static struct pci_driver iwl3945_driver
+@@ -4272,7 +4272,12 @@ static struct pci_driver iwl3945_driver
        .id_table = iwl3945_hw_card_ids,
        .probe = iwl3945_pci_probe,
        .remove = __devexit_p(iwl3945_pci_remove),
index bd74e00b96fd44cd28eb0a2952eec052f592566f..5277da62f7bc401d960fdc15efe172c3bce55749 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
-@@ -2883,7 +2883,12 @@ void ieee80211_rx(struct ieee80211_hw *h
+@@ -2882,7 +2882,12 @@ void ieee80211_rx(struct ieee80211_hw *h
   drop:
        kfree_skb(skb);
  }
index 44a413729f01aad4bf688af53daf0f3e5aea8f1a..be25ee06e0d2678278d188ded1627e4c7675223f 100644 (file)
@@ -549,7 +549,7 @@ here still, but for now we keep this here.
  
 --- a/net/bluetooth/l2cap.c
 +++ b/net/bluetooth/l2cap.c
-@@ -957,8 +957,12 @@ static struct sock *l2cap_sock_alloc(str
+@@ -965,8 +965,12 @@ static struct sock *l2cap_sock_alloc(str
        return sk;
  }
  
@@ -562,7 +562,7 @@ here still, but for now we keep this here.
  {
        struct sock *sk;
  
-@@ -970,7 +974,11 @@ static int l2cap_sock_create(struct net
+@@ -978,7 +982,11 @@ static int l2cap_sock_create(struct net
                        sock->type != SOCK_DGRAM && sock->type != SOCK_RAW)
                return -ESOCKTNOSUPPORT;
  
@@ -574,7 +574,7 @@ here still, but for now we keep this here.
                return -EPERM;
  
        sock->ops = &l2cap_sock_ops;
-@@ -2042,7 +2050,11 @@ static int l2cap_sock_setsockopt_old(str
+@@ -2050,7 +2058,11 @@ static int l2cap_sock_setsockopt_old(str
        return err;
  }
  
index f0e7f59ce1584edc815833d0ca1f37b8e245869f..84bcf367b0567fd4bcc8757e323bded37d869957 100644 (file)
@@ -48,7 +48,7 @@ not be backported easily with defines in the compat module.
         * Tasklet for processing tx status reports (rt2800pci).
 --- a/drivers/net/wireless/rt2x00/rt2x00dev.c
 +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
-@@ -827,10 +827,16 @@ static int rt2x00lib_probe_hw(struct rt2
+@@ -824,10 +824,16 @@ static int rt2x00lib_probe_hw(struct rt2
                 * queues gets reported before we've got a chance to handle
                 * them) 24*4=384 tx status reports need to be cached.
                 */
index 098765ce69c27c2a8785cb982950dcfc9bcc7a69..25a39467f98598b2311298cb999feeb7ee9e3dee 100644 (file)
@@ -4,7 +4,7 @@ compat_is_pcie() when needed.
 
 --- a/drivers/net/wireless/ath/ath9k/pci.c
 +++ b/drivers/net/wireless/ath/ath9k/pci.c
-@@ -80,7 +80,11 @@ static void ath_pci_bt_coex_prep(struct
+@@ -96,7 +96,11 @@ static void ath_pci_bt_coex_prep(struct
        struct pci_dev *pdev = to_pci_dev(sc->dev);
        u8 aspm;
  
index 60e360ac970fa3bc20aabf112a85a32ecac3e672..d7a7cbeb7d6b93a5a8cdad1b453250b534120547 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
-@@ -1624,6 +1624,10 @@ static void ieee80211_xmit(struct ieee80
+@@ -1632,6 +1632,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();
-@@ -2096,7 +2100,14 @@ void ieee80211_tx_pending(unsigned long
+@@ -2104,7 +2108,14 @@ void ieee80211_tx_pending(unsigned long
  
                if (skb_queue_empty(&local->pending[i]))
                        list_for_each_entry_rcu(sdata, &local->interfaces, list)
index aa6fc2a7df9fb318838dacf24cc74bcba74ce433..17b699e8c00aafea9c8f8d3fc6f3e1b83cb67d2e 100644 (file)
@@ -162,7 +162,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  }
 --- a/drivers/net/wireless/ath/ath5k/base.c
 +++ b/drivers/net/wireless/ath/ath5k/base.c
-@@ -2973,20 +2973,42 @@ unlock:
+@@ -2967,20 +2967,42 @@ unlock:
  }
  
  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));
-@@ -2995,6 +3017,9 @@ static u64 ath5k_prepare_multicast(struc
+@@ -2989,6 +3011,9 @@ static u64 ath5k_prepare_multicast(struc
                * neet to inform below to not reset the mcast */
                /* ath5k_hw_set_mcast_filterindex(ah,
                 *      ha->addr[5]); */
@@ -217,7 +217,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        return ((u64)(mfilt[1]) << 32) | mfilt[0];
 --- a/drivers/net/wireless/ath/carl9170/main.c
 +++ b/drivers/net/wireless/ath/carl9170/main.c
-@@ -824,17 +824,35 @@ out:
+@@ -840,17 +840,35 @@ out:
        return err;
  }
  
@@ -331,7 +331,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
  }
 --- a/drivers/net/wireless/mwl8k.c
 +++ b/drivers/net/wireless/mwl8k.c
-@@ -1938,15 +1938,21 @@ struct mwl8k_cmd_mac_multicast_adr {
+@@ -2005,15 +2005,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;
-@@ -1967,13 +1973,27 @@ __mwl8k_cmd_mac_multicast_adr(struct iee
+@@ -2034,13 +2040,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
                }
        }
  
-@@ -3550,7 +3570,11 @@ mwl8k_bss_info_changed(struct ieee80211_
+@@ -3699,7 +3719,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;
  
-@@ -3561,7 +3585,11 @@ static u64 mwl8k_prepare_multicast(struc
+@@ -3710,7 +3734,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;
  }
-@@ -3683,7 +3711,11 @@ static void mwl8k_configure_filter(struc
+@@ -3832,7 +3860,11 @@ static void mwl8k_configure_filter(struc
         */
        if (*total_flags & FIF_ALLMULTI) {
                kfree(cmd);
@@ -445,7 +445,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
                              size_t fw_name_len, u32 *hw_ver);
 --- a/drivers/net/wireless/rndis_wlan.c
 +++ b/drivers/net/wireless/rndis_wlan.c
-@@ -1588,7 +1588,11 @@ static void set_multicast_list(struct us
+@@ -1606,7 +1606,11 @@ static void set_multicast_list(struct us
  
                netdev_for_each_mc_addr(ha, usbdev->net)
                        memcpy(mc_addrs + i++ * ETH_ALEN,
@@ -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
-@@ -1192,9 +1192,17 @@ static void rtl8187_bss_info_changed(str
+@@ -1194,9 +1194,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/wl1271_main.c
 +++ b/drivers/net/wireless/wl12xx/wl1271_main.c
-@@ -1410,11 +1410,20 @@ struct wl1271_filter_params {
+@@ -1460,11 +1460,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))
-@@ -1427,16 +1436,40 @@ static u64 wl1271_op_prepare_multicast(s
+@@ -1477,16 +1486,40 @@ static u64 wl1271_op_prepare_multicast(s
        }
  
        /* update multicast filtering parameters */
@@ -602,7 +602,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
        return hash.low | ((u64)hash.high << 32);
 --- a/include/net/mac80211.h
 +++ b/include/net/mac80211.h
-@@ -1742,7 +1742,11 @@ struct ieee80211_ops {
+@@ -1763,7 +1763,11 @@ struct ieee80211_ops {
                                 struct ieee80211_bss_conf *info,
                                 u32 changed);
        u64 (*prepare_multicast)(struct ieee80211_hw *hw,
index 5f90791ecb61762126e77e13228ebf7f687863c7..c70b6bec13cd1fda0fdb3c43afd129dff342b2b4 100644 (file)
@@ -45,7 +45,7 @@ define for something else in arch/um/include/asm/pda.h on older kernels.
        int (*program_end)(struct hermes *hw);
 --- a/drivers/net/wireless/orinoco/orinoco_usb.c
 +++ b/drivers/net/wireless/orinoco/orinoco_usb.c
-@@ -1549,7 +1549,7 @@ static const struct hermes_ops ezusb_ops
+@@ -1548,7 +1548,7 @@ static const struct hermes_ops ezusb_ops
        .read_ltv = ezusb_read_ltv,
        .write_ltv = ezusb_write_ltv,
        .bap_pread = ezusb_bap_pread,
index bb4bc80716719df8677f2061970246af97a6c93e..7fc2668c7b5891399c7a54f6d7b82f3851a0d9ea 100644 (file)
@@ -34,7 +34,7 @@ compat-wireless.
             ntype == NL80211_IFTYPE_P2P_CLIENT))
 --- a/net/wireless/nl80211.c
 +++ b/net/wireless/nl80211.c
-@@ -1247,7 +1247,7 @@ static int nl80211_valid_4addr(struct cf
+@@ -1278,7 +1278,7 @@ static int nl80211_valid_4addr(struct cf
                               enum nl80211_iftype iftype)
  {
        if (!use_4addr) {
index d16642b29d8929ff44649903e5d12cc5f44a825e..13be2cc695b0410dc12818f71d69a24e4366f8eb 100644 (file)
@@ -9,7 +9,7 @@ backlog.
 
 --- a/net/bluetooth/l2cap.c
 +++ b/net/bluetooth/l2cap.c
-@@ -4385,8 +4385,12 @@ static inline int l2cap_data_channel(str
+@@ -4419,8 +4419,12 @@ static inline int l2cap_data_channel(str
                if (!sock_owned_by_user(sk)) {
                        l2cap_ertm_data_rcv(sk, skb);
                } else {