From 2caa49198b1ef7023682099bb728168d57a42b74 Mon Sep 17 00:00:00 2001 From: "Luis R. Rodriguez" Date: Tue, 3 Aug 2010 13:31:39 -0700 Subject: [PATCH] compat-wireless: refresh patches Signed-off-by: Luis R. Rodriguez --- patches/01-netdev.patch | 18 +++++----- patches/02-ksize.patch | 4 +-- patches/03-rfkill.patch | 2 +- patches/04-netns.patch | 12 +++---- patches/08-rename-iwl4965-config.patch | 2 +- patches/10-add-wext-handlers-to-netdev.patch | 2 +- patches/14-device-type.patch | 4 +-- patches/16-bluetooth.patch | 10 +++--- patches/17-netdev-queue.patch | 4 +-- patches/19-kfifo.patch | 6 ++-- patches/22-multiqueue.patch | 4 +-- patches/24-pcmcia.patch | 28 +++++++-------- patches/25-multicast-list_head.patch | 38 ++++++++++---------- patches/28-pm-qos-params.patch | 2 +- patches/31-backport-sk_add_backlog.patch | 2 +- 15 files changed, 69 insertions(+), 69 deletions(-) diff --git a/patches/01-netdev.patch b/patches/01-netdev.patch index bec8e581ef9a..273405220555 100644 --- a/patches/01-netdev.patch +++ b/patches/01-netdev.patch @@ -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 -@@ -1331,7 +1331,7 @@ usbnet_probe (struct usb_interface *udev +@@ -1322,7 +1322,7 @@ usbnet_probe (struct usb_interface *udev net->features |= NETIF_F_HIGHDMA; #endif @@ -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 -@@ -697,7 +697,12 @@ static const struct net_device_ops ieee8 +@@ -699,7 +699,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; } -@@ -842,7 +847,7 @@ static void ieee80211_setup_sdata(struct +@@ -844,7 +849,7 @@ static void ieee80211_setup_sdata(struct /* and set some type-dependent values */ sdata->vif.type = type; @@ -68,7 +68,7 @@ without creating a headache on maintenance of the pathes. sdata->wdev.iftype = type; /* only monitor differs */ -@@ -868,7 +873,7 @@ static void ieee80211_setup_sdata(struct +@@ -870,7 +875,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; -@@ -1049,6 +1054,8 @@ int ieee80211_if_add(struct ieee80211_lo +@@ -1051,6 +1056,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 */ -@@ -1057,6 +1064,7 @@ int ieee80211_if_add(struct ieee80211_lo +@@ -1059,6 +1066,7 @@ int ieee80211_if_add(struct ieee80211_lo - ETH_HLEN /* ethernet hard_header_len */ + IEEE80211_ENCRYPT_HEADROOM; ndev->needed_tailroom = IEEE80211_ENCRYPT_TAILROOM; @@ -94,7 +94,7 @@ without creating a headache on maintenance of the pathes. ret = dev_alloc_name(ndev, ndev->name); if (ret < 0) -@@ -1105,6 +1113,10 @@ int ieee80211_if_add(struct ieee80211_lo +@@ -1107,6 +1115,10 @@ int ieee80211_if_add(struct ieee80211_lo if (ret) goto fail; @@ -228,7 +228,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 -@@ -836,7 +836,7 @@ struct lbs_private *lbs_add_card(void *c +@@ -823,7 +823,7 @@ struct lbs_private *lbs_add_card(void *c wdev->netdev = dev; priv->dev = dev; @@ -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 -@@ -1088,7 +1088,7 @@ static const struct net_device_ops hwsim +@@ -1080,7 +1080,7 @@ static const struct net_device_ops hwsim static void hwsim_mon_setup(struct net_device *dev) { diff --git a/patches/02-ksize.patch b/patches/02-ksize.patch index 88f5f0620446..21b7c7ba4564 100644 --- a/patches/02-ksize.patch +++ b/patches/02-ksize.patch @@ -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 -@@ -427,9 +427,14 @@ cfg80211_bss_update(struct cfg80211_regi +@@ -432,9 +432,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; -@@ -460,9 +465,14 @@ cfg80211_bss_update(struct cfg80211_regi +@@ -465,9 +470,14 @@ cfg80211_bss_update(struct cfg80211_regi size_t used = dev->wiphy.bss_priv_size + sizeof(*res); size_t ielen = res->pub.len_beacon_ies; diff --git a/patches/03-rfkill.patch b/patches/03-rfkill.patch index e8a9fe8246aa..e1c82496da77 100644 --- a/patches/03-rfkill.patch +++ b/patches/03-rfkill.patch @@ -208,7 +208,7 @@ This would do the policing from within mac80211. #include --- a/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c -@@ -2193,7 +2193,7 @@ int ath9k_hw_fill_cap_info(struct ath_hw +@@ -2194,7 +2194,7 @@ int ath9k_hw_fill_cap_info(struct ath_hw pCap->hw_caps |= ATH9K_HW_CAP_ENHANCEDPM; diff --git a/patches/04-netns.patch b/patches/04-netns.patch index 49354e48112e..a10ecdf517e1 100644 --- a/patches/04-netns.patch +++ b/patches/04-netns.patch @@ -16,7 +16,7 @@ files... }; /* internal helper: get rdev and dev */ -@@ -4374,7 +4376,9 @@ static int nl80211_wiphy_netns(struct sk +@@ -4376,7 +4378,9 @@ static int nl80211_wiphy_netns(struct sk err = cfg80211_switch_netns(rdev, net); out_put_net: @@ -54,7 +54,7 @@ files... rdev->rfkill_ops.set_block = cfg80211_rfkill_set_block; rdev->rfkill = rfkill_alloc(dev_name(&rdev->wiphy.dev), -@@ -684,8 +688,10 @@ static int cfg80211_netdev_notifier_call +@@ -686,8 +690,10 @@ static int cfg80211_netdev_notifier_call mutex_lock(&rdev->devlist_mtx); list_add_rcu(&wdev->list, &rdev->netdev_list); rdev->devlist_generation++; @@ -65,7 +65,7 @@ files... if (sysfs_create_link(&dev->dev.kobj, &rdev->wiphy.dev.kobj, "phy80211")) { -@@ -829,6 +835,7 @@ static struct notifier_block cfg80211_ne +@@ -831,6 +837,7 @@ static struct notifier_block cfg80211_ne .notifier_call = cfg80211_netdev_notifier_call, }; @@ -73,7 +73,7 @@ files... static void __net_exit cfg80211_pernet_exit(struct net *net) { struct cfg80211_registered_device *rdev; -@@ -846,14 +853,17 @@ static void __net_exit cfg80211_pernet_e +@@ -848,14 +855,17 @@ static void __net_exit cfg80211_pernet_e static struct pernet_operations cfg80211_pernet_ops = { .exit = cfg80211_pernet_exit, }; @@ -91,7 +91,7 @@ files... err = wiphy_sysfs_init(); if (err) -@@ -888,8 +898,10 @@ out_fail_nl80211: +@@ -890,8 +900,10 @@ out_fail_nl80211: out_fail_notifier: wiphy_sysfs_exit(); out_fail_sysfs: @@ -102,7 +102,7 @@ files... return err; } subsys_initcall(cfg80211_init); -@@ -901,7 +913,9 @@ static void __exit cfg80211_exit(void) +@@ -903,7 +915,9 @@ static void __exit cfg80211_exit(void) unregister_netdevice_notifier(&cfg80211_netdev_notifier); wiphy_sysfs_exit(); regulatory_exit(); diff --git a/patches/08-rename-iwl4965-config.patch b/patches/08-rename-iwl4965-config.patch index 3a6b38c03215..7536c606041a 100644 --- a/patches/08-rename-iwl4965-config.patch +++ b/patches/08-rename-iwl4965-config.patch @@ -16,7 +16,7 @@ CONFIG_IWL4965 has to be set to y, to build correctly. iwlagn-$(CONFIG_IWL5000) += iwl-1000.o --- a/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c -@@ -4218,10 +4218,10 @@ static void __devexit iwl_pci_remove(str +@@ -4248,10 +4248,10 @@ static void __devexit iwl_pci_remove(str /* Hardware specific file defines the PCI IDs table for that hardware module */ static DEFINE_PCI_DEVICE_TABLE(iwl_hw_card_ids) = { diff --git a/patches/10-add-wext-handlers-to-netdev.patch b/patches/10-add-wext-handlers-to-netdev.patch index 31971a7b8aae..4226516fb9a4 100644 --- a/patches/10-add-wext-handlers-to-netdev.patch +++ b/patches/10-add-wext-handlers-to-netdev.patch @@ -29,7 +29,7 @@ CONFIG_WIRELESS_EXT in compat-wireless. device_initialize(&rdev->wiphy.dev); rdev->wiphy.dev.class = &ieee80211_class; rdev->wiphy.dev.platform_data = rdev; -@@ -702,6 +698,8 @@ static int cfg80211_netdev_notifier_call +@@ -704,6 +700,8 @@ static int cfg80211_netdev_notifier_call wdev->sme_state = CFG80211_SME_IDLE; mutex_unlock(&rdev->devlist_mtx); #ifdef CONFIG_CFG80211_WEXT diff --git a/patches/14-device-type.patch b/patches/14-device-type.patch index f6ee1d72d64a..a819c4d38566 100644 --- a/patches/14-device-type.patch +++ b/patches/14-device-type.patch @@ -8,7 +8,7 @@ compile warning. --- a/net/wireless/core.c +++ b/net/wireless/core.c -@@ -645,9 +645,11 @@ static void wdev_cleanup_work(struct wor +@@ -647,9 +647,11 @@ static void wdev_cleanup_work(struct wor dev_put(wdev->netdev); } @@ -36,7 +36,7 @@ compile warning. { --- a/drivers/net/usb/usbnet.c +++ b/drivers/net/usb/usbnet.c -@@ -1254,13 +1254,17 @@ static const struct net_device_ops usbne +@@ -1245,13 +1245,17 @@ static const struct net_device_ops usbne // precondition: never called in_interrupt diff --git a/patches/16-bluetooth.patch b/patches/16-bluetooth.patch index 62717c7d46eb..522b68054a26 100644 --- a/patches/16-bluetooth.patch +++ b/patches/16-bluetooth.patch @@ -111,7 +111,7 @@ here still, but for now we keep this here. #include --- a/net/bluetooth/hci_sock.c +++ b/net/bluetooth/hci_sock.c -@@ -563,7 +563,11 @@ drop: +@@ -561,7 +561,11 @@ drop: goto done; } @@ -123,7 +123,7 @@ here still, but for now we keep this here. { struct hci_ufilter uf = { .opcode = 0 }; struct sock *sk = sock->sk; -@@ -718,8 +722,12 @@ static struct proto hci_sk_proto = { +@@ -716,8 +720,12 @@ static struct proto hci_sk_proto = { .obj_size = sizeof(struct hci_pinfo) }; @@ -570,7 +570,7 @@ here still, but for now we keep this here. --- a/net/bluetooth/l2cap.c +++ b/net/bluetooth/l2cap.c -@@ -955,8 +955,12 @@ static struct sock *l2cap_sock_alloc(str +@@ -957,8 +957,12 @@ static struct sock *l2cap_sock_alloc(str return sk; } @@ -583,7 +583,7 @@ here still, but for now we keep this here. { struct sock *sk; -@@ -968,7 +972,11 @@ static int l2cap_sock_create(struct net +@@ -970,7 +974,11 @@ static int l2cap_sock_create(struct net sock->type != SOCK_DGRAM && sock->type != SOCK_RAW) return -ESOCKTNOSUPPORT; @@ -595,7 +595,7 @@ here still, but for now we keep this here. return -EPERM; sock->ops = &l2cap_sock_ops; -@@ -2025,7 +2033,11 @@ static int l2cap_sock_setsockopt_old(str +@@ -2027,7 +2035,11 @@ static int l2cap_sock_setsockopt_old(str return err; } diff --git a/patches/17-netdev-queue.patch b/patches/17-netdev-queue.patch index 1bbd079d924d..8dee91c7479c 100644 --- a/patches/17-netdev-queue.patch +++ b/patches/17-netdev-queue.patch @@ -14,7 +14,7 @@ The patch that introduced this on mac80211 was: --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c -@@ -1153,6 +1153,7 @@ void ieee80211_if_remove(struct ieee8021 +@@ -1155,6 +1155,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; -@@ -1169,6 +1170,22 @@ void ieee80211_remove_interfaces(struct +@@ -1171,6 +1172,22 @@ void ieee80211_remove_interfaces(struct mutex_unlock(&local->iflist_mtx); unregister_netdevice_many(&unreg_list); } diff --git a/patches/19-kfifo.patch b/patches/19-kfifo.patch index a49783be6f19..680f2b4ea83d 100644 --- a/patches/19-kfifo.patch +++ b/patches/19-kfifo.patch @@ -3,7 +3,7 @@ not be backported easily with defines in the compat module. --- a/drivers/net/wireless/libertas/dev.h +++ b/drivers/net/wireless/libertas/dev.h -@@ -126,7 +126,11 @@ struct lbs_private { +@@ -120,7 +120,11 @@ struct lbs_private { u32 resp_len[2]; /* Events sent from hardware to driver */ @@ -17,7 +17,7 @@ not be backported easily with defines in the compat module. struct task_struct *main_thread; --- a/drivers/net/wireless/libertas/main.c +++ b/drivers/net/wireless/libertas/main.c -@@ -758,8 +758,14 @@ static int lbs_init_adapter(struct lbs_p +@@ -745,8 +745,14 @@ static int lbs_init_adapter(struct lbs_p priv->resp_len[0] = priv->resp_len[1] = 0; /* Create the event FIFO */ @@ -32,7 +32,7 @@ not be backported easily with defines in the compat module. lbs_pr_err("Out of memory allocating event FIFO buffer\n"); goto out; } -@@ -775,7 +781,12 @@ static void lbs_free_adapter(struct lbs_ +@@ -762,7 +768,12 @@ static void lbs_free_adapter(struct lbs_ lbs_deb_enter(LBS_DEB_MAIN); lbs_free_cmd_buffer(priv); diff --git a/patches/22-multiqueue.patch b/patches/22-multiqueue.patch index 24ac885e1c8c..a1566138d7d4 100644 --- a/patches/22-multiqueue.patch +++ b/patches/22-multiqueue.patch @@ -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 -@@ -1604,6 +1604,10 @@ static void ieee80211_xmit(struct ieee80 +@@ -1597,6 +1597,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(); -@@ -2073,8 +2077,15 @@ void ieee80211_tx_pending(unsigned long +@@ -2068,8 +2072,15 @@ void ieee80211_tx_pending(unsigned long if (skb_queue_empty(&local->pending[i])) list_for_each_entry_rcu(sdata, &local->interfaces, list) diff --git a/patches/24-pcmcia.patch b/patches/24-pcmcia.patch index 6c2f576fcd54..9fb0e772dcdf 100644 --- a/patches/24-pcmcia.patch +++ b/patches/24-pcmcia.patch @@ -1,8 +1,8 @@ --- a/drivers/bluetooth/bluecard_cs.c +++ b/drivers/bluetooth/bluecard_cs.c -@@ -869,6 +869,12 @@ static int bluecard_probe(struct pcmcia_ - link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; - link->io.NumPorts1 = 8; +@@ -865,6 +865,12 @@ static int bluecard_probe(struct pcmcia_ + info->p_dev = link; + link->priv = info; +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35)) + link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING; @@ -13,7 +13,7 @@ link->conf.Attributes = CONF_ENABLE_IRQ; link->conf.IntType = INT_MEMORY_AND_IO; -@@ -904,9 +910,15 @@ static int bluecard_config(struct pcmcia +@@ -902,9 +908,15 @@ static int bluecard_config(struct pcmcia if (i != 0) goto failed; @@ -31,9 +31,9 @@ if (i != 0) --- a/drivers/bluetooth/bt3c_cs.c +++ b/drivers/bluetooth/bt3c_cs.c -@@ -661,6 +661,12 @@ static int bt3c_probe(struct pcmcia_devi - link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; - link->io.NumPorts1 = 8; +@@ -660,6 +660,12 @@ static int bt3c_probe(struct pcmcia_devi + link->resource[0]->flags |= IO_DATA_PATH_WIDTH_8; + link->resource[0]->end = 8; +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35)) + link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING; @@ -44,7 +44,7 @@ link->conf.Attributes = CONF_ENABLE_IRQ; link->conf.IntType = INT_MEMORY_AND_IO; -@@ -739,9 +745,15 @@ static int bt3c_config(struct pcmcia_dev +@@ -738,9 +744,15 @@ static int bt3c_config(struct pcmcia_dev goto failed; found_port: @@ -62,9 +62,9 @@ if (i != 0) --- a/drivers/bluetooth/btuart_cs.c +++ b/drivers/bluetooth/btuart_cs.c -@@ -590,6 +590,12 @@ static int btuart_probe(struct pcmcia_de - link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; - link->io.NumPorts1 = 8; +@@ -589,6 +589,12 @@ static int btuart_probe(struct pcmcia_de + link->resource[0]->flags |= IO_DATA_PATH_WIDTH_8; + link->resource[0]->end = 8; +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35)) + link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING; @@ -75,7 +75,7 @@ link->conf.Attributes = CONF_ENABLE_IRQ; link->conf.IntType = INT_MEMORY_AND_IO; -@@ -668,9 +674,15 @@ static int btuart_config(struct pcmcia_d +@@ -667,9 +673,15 @@ static int btuart_config(struct pcmcia_d goto failed; found_port: @@ -122,7 +122,7 @@ if (i != 0) --- a/drivers/net/wireless/b43/pcmcia.c +++ b/drivers/net/wireless/b43/pcmcia.c -@@ -98,7 +98,14 @@ static int __devinit b43_pcmcia_probe(st +@@ -89,7 +89,14 @@ static int __devinit b43_pcmcia_probe(st if (res != 0) goto err_disable; @@ -351,7 +351,7 @@ } --- a/drivers/ssb/main.c +++ b/drivers/ssb/main.c -@@ -491,7 +491,11 @@ static int ssb_devices_register(struct s +@@ -490,7 +490,11 @@ static int ssb_devices_register(struct s break; case SSB_BUSTYPE_PCMCIA: #ifdef CONFIG_SSB_PCMCIAHOST diff --git a/patches/25-multicast-list_head.patch b/patches/25-multicast-list_head.patch index 742bb00251fe..a4706cf0053e 100644 --- a/patches/25-multicast-list_head.patch +++ b/patches/25-multicast-list_head.patch @@ -83,7 +83,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 } --- a/drivers/net/wireless/adm8211.c +++ b/drivers/net/wireless/adm8211.c -@@ -1318,19 +1318,37 @@ static void adm8211_bss_info_changed(str +@@ -1317,19 +1317,37 @@ static void adm8211_bss_info_changed(str } static u64 adm8211_prepare_multicast(struct ieee80211_hw *hw, @@ -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 -@@ -1620,17 +1620,35 @@ out: +@@ -1608,17 +1608,35 @@ out: return err; } @@ -174,7 +174,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 static void ath5k_configure_filter(struct ieee80211_hw *hw, unsigned int changed_flags, unsigned int *new_flags, -@@ -3139,20 +3143,42 @@ unlock: +@@ -3148,20 +3152,42 @@ unlock: } static u64 ath5k_prepare_multicast(struct ieee80211_hw *hw, @@ -217,7 +217,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 pos ^= (val >> 18) ^ (val >> 12) ^ (val >> 6) ^ val; pos &= 0x3f; mfilt[pos / 32] |= (1 << (pos % 32)); -@@ -3161,6 +3187,9 @@ static u64 ath5k_prepare_multicast(struc +@@ -3170,6 +3196,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]); */ @@ -229,7 +229,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 return ((u64)(mfilt[1]) << 32) | mfilt[0]; --- a/drivers/net/wireless/libertas/main.c +++ b/drivers/net/wireless/libertas/main.c -@@ -247,18 +247,34 @@ static int lbs_add_mcast_addrs(struct cm +@@ -242,18 +242,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) { @@ -305,7 +305,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 } --- a/drivers/net/wireless/mwl8k.c +++ b/drivers/net/wireless/mwl8k.c -@@ -1937,15 +1937,21 @@ struct mwl8k_cmd_mac_multicast_adr { +@@ -1938,15 +1938,21 @@ struct mwl8k_cmd_mac_multicast_adr { static struct mwl8k_cmd_pkt * __mwl8k_cmd_mac_multicast_adr(struct ieee80211_hw *hw, int allmulti, @@ -327,7 +327,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 if (allmulti || mc_count > priv->num_mcaddrs) { allmulti = 1; -@@ -1966,13 +1972,27 @@ __mwl8k_cmd_mac_multicast_adr(struct iee +@@ -1967,13 +1973,27 @@ __mwl8k_cmd_mac_multicast_adr(struct iee if (allmulti) { cmd->action |= cpu_to_le16(MWL8K_ENABLE_RX_ALL_MULTICAST); } else if (mc_count) { @@ -355,7 +355,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 } } -@@ -3551,7 +3571,11 @@ mwl8k_bss_info_changed(struct ieee80211_ +@@ -3550,7 +3570,11 @@ mwl8k_bss_info_changed(struct ieee80211_ } static u64 mwl8k_prepare_multicast(struct ieee80211_hw *hw, @@ -367,7 +367,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 { struct mwl8k_cmd_pkt *cmd; -@@ -3562,7 +3586,11 @@ static u64 mwl8k_prepare_multicast(struc +@@ -3561,7 +3585,11 @@ static u64 mwl8k_prepare_multicast(struc * we'll end up throwing this packet away and creating a new * one in mwl8k_configure_filter(). */ @@ -379,7 +379,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 return (unsigned long)cmd; } -@@ -3685,7 +3713,11 @@ static void mwl8k_configure_filter(struc +@@ -3683,7 +3711,11 @@ static void mwl8k_configure_filter(struc */ if (*total_flags & FIF_ALLMULTI) { kfree(cmd); @@ -433,7 +433,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 --- a/drivers/net/wireless/rtl818x/rtl8180_dev.c +++ b/drivers/net/wireless/rtl818x/rtl8180_dev.c -@@ -803,10 +803,19 @@ static void rtl8180_bss_info_changed(str +@@ -810,10 +810,19 @@ static void rtl8180_bss_info_changed(str } } @@ -455,7 +455,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 +@@ -1193,9 +1193,17 @@ static void rtl8187_bss_info_changed(str } static u64 rtl8187_prepare_multicast(struct ieee80211_hw *dev, @@ -475,7 +475,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 -@@ -1320,11 +1320,20 @@ struct wl1271_filter_params { +@@ -1325,11 +1325,20 @@ struct wl1271_filter_params { u8 mc_list[ACX_MC_ADDRESS_GROUP_MAX][ETH_ALEN]; }; @@ -496,7 +496,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 struct wl1271 *wl = hw->priv; if (unlikely(wl->state == WL1271_STATE_OFF)) -@@ -1337,16 +1346,40 @@ static u64 wl1271_op_prepare_multicast(s +@@ -1342,16 +1351,40 @@ static u64 wl1271_op_prepare_multicast(s } /* update multicast filtering parameters */ @@ -576,7 +576,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 return hash.low | ((u64)hash.high << 32); --- a/include/net/mac80211.h +++ b/include/net/mac80211.h -@@ -1695,7 +1695,11 @@ struct ieee80211_ops { +@@ -1702,7 +1702,11 @@ struct ieee80211_ops { struct ieee80211_bss_conf *info, u32 changed); u64 (*prepare_multicast)(struct ieee80211_hw *hw, @@ -637,7 +637,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h -@@ -668,7 +668,12 @@ struct ieee80211_local { +@@ -666,7 +666,12 @@ struct ieee80211_local { struct work_struct recalc_smps; /* aggregated multicast list */ @@ -652,7 +652,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c -@@ -390,7 +390,12 @@ static int ieee80211_stop(struct net_dev +@@ -392,7 +392,12 @@ static int ieee80211_stop(struct net_dev netif_addr_lock_bh(dev); spin_lock_bh(&local->filter_lock); @@ -665,7 +665,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 spin_unlock_bh(&local->filter_lock); netif_addr_unlock_bh(dev); -@@ -570,7 +575,12 @@ static void ieee80211_set_multicast_list +@@ -572,7 +577,12 @@ static void ieee80211_set_multicast_list sdata->flags ^= IEEE80211_SDATA_PROMISC; } spin_lock_bh(&local->filter_lock); @@ -692,7 +692,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856 spin_unlock_bh(&local->filter_lock); /* be a bit nasty */ -@@ -448,9 +452,11 @@ struct ieee80211_hw *ieee80211_alloc_hw( +@@ -451,9 +455,11 @@ struct ieee80211_hw *ieee80211_alloc_hw( local->uapsd_max_sp_len = IEEE80211_DEFAULT_MAX_SP_LEN; INIT_LIST_HEAD(&local->interfaces); diff --git a/patches/28-pm-qos-params.patch b/patches/28-pm-qos-params.patch index a6aab68c912c..cd8fecad35b6 100644 --- a/patches/28-pm-qos-params.patch +++ b/patches/28-pm-qos-params.patch @@ -104,7 +104,7 @@ little wierd. found->vif.bss_conf.beacon_int); --- a/net/mac80211/scan.c +++ b/net/mac80211/scan.c -@@ -510,7 +510,11 @@ static int ieee80211_scan_state_decision +@@ -514,7 +514,11 @@ static int ieee80211_scan_state_decision bad_latency = time_after(jiffies + ieee80211_scan_get_channel_time(next_chan), local->leave_oper_channel_time + diff --git a/patches/31-backport-sk_add_backlog.patch b/patches/31-backport-sk_add_backlog.patch index 2cd4e9f270af..ceb8d77b6195 100644 --- a/patches/31-backport-sk_add_backlog.patch +++ b/patches/31-backport-sk_add_backlog.patch @@ -9,7 +9,7 @@ backlog. --- a/net/bluetooth/l2cap.c +++ b/net/bluetooth/l2cap.c -@@ -4349,8 +4349,12 @@ static inline int l2cap_data_channel(str +@@ -4351,8 +4351,12 @@ static inline int l2cap_data_channel(str if (!sock_owned_by_user(sk)) { l2cap_ertm_data_rcv(sk, skb); } else { -- 2.30.2