From e46b533e1f509cb58e47370374b167c6d93bc5e0 Mon Sep 17 00:00:00 2001 From: "Luis R. Rodriguez" Date: Wed, 30 Mar 2011 11:03:17 -0700 Subject: [PATCH] compat-wireless: refresh patches Signed-off-by: Luis R. Rodriguez --- patches/01-netdev.patch | 22 ++++++------ patches/02-ksize.patch | 4 +-- patches/04-netns.patch | 10 +++--- patches/05-usb.patch | 4 +-- patches/08-rename-config-options.patch | 2 +- patches/09-threaded-irq.patch | 6 ++-- patches/11-dev-pm-ops.patch | 14 ++++---- patches/14-device-type.patch | 4 +-- patches/15-symbol-export-conflicts.patch | 2 +- patches/16-bluetooth.patch | 40 ++++++++++----------- patches/17-netdev-queue.patch | 6 ++-- patches/18-rename-usb-net-symbols.patch | 2 +- patches/22-multiqueue.patch | 4 +-- patches/25-multicast-list_head.patch | 44 ++++++++++++------------ patches/31-backport-sk_add_backlog.patch | 2 +- patches/34-backport-bin_attribute.patch | 8 ++--- patches/36-workqueue.patch | 2 +- patches/99-change-makefiles.patch | 2 +- 18 files changed, 89 insertions(+), 89 deletions(-) diff --git a/patches/01-netdev.patch b/patches/01-netdev.patch index eba863733cab..dc5ea98e6644 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 -@@ -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; diff --git a/patches/02-ksize.patch b/patches/02-ksize.patch index 0f51bcb4404a..c8e8c9a1a0ef 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 -@@ -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); diff --git a/patches/04-netns.patch b/patches/04-netns.patch index 8669617cd041..f4974411b2d8 100644 --- a/patches/04-netns.patch +++ b/patches/04-netns.patch @@ -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(); diff --git a/patches/05-usb.patch b/patches/05-usb.patch index 9384af08a2da..723f3073e047 100644 --- a/patches/05-usb.patch +++ b/patches/05-usb.patch @@ -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, diff --git a/patches/08-rename-config-options.patch b/patches/08-rename-config-options.patch index b951073bd17a..16f788e8821e 100644 --- a/patches/08-rename-config-options.patch +++ b/patches/08-rename-config-options.patch @@ -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) = { diff --git a/patches/09-threaded-irq.patch b/patches/09-threaded-irq.patch index df164e95d3b9..f62933eb0285 100644 --- a/patches/09-threaded-irq.patch +++ b/patches/09-threaded-irq.patch @@ -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) { diff --git a/patches/11-dev-pm-ops.patch b/patches/11-dev-pm-ops.patch index 24e72ac4920c..7c77b78f0209 100644 --- a/patches/11-dev-pm-ops.patch +++ b/patches/11-dev-pm-ops.patch @@ -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); diff --git a/patches/14-device-type.patch b/patches/14-device-type.patch index b801ed9c53da..9581466bbf08 100644 --- a/patches/14-device-type.patch +++ b/patches/14-device-type.patch @@ -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 diff --git a/patches/15-symbol-export-conflicts.patch b/patches/15-symbol-export-conflicts.patch index b99f0855a71f..c15baa98e91c 100644 --- a/patches/15-symbol-export-conflicts.patch +++ b/patches/15-symbol-export-conflicts.patch @@ -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); } diff --git a/patches/16-bluetooth.patch b/patches/16-bluetooth.patch index 57863acd212b..bc4514299865 100644 --- a/patches/16-bluetooth.patch +++ b/patches/16-bluetooth.patch @@ -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; diff --git a/patches/17-netdev-queue.patch b/patches/17-netdev-queue.patch index f7ae882a674b..141764175f29 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 -@@ -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) diff --git a/patches/18-rename-usb-net-symbols.patch b/patches/18-rename-usb-net-symbols.patch index f10d0f46b9eb..9028e79d5ea7 100644 --- a/patches/18-rename-usb-net-symbols.patch +++ b/patches/18-rename-usb-net-symbols.patch @@ -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 diff --git a/patches/22-multiqueue.patch b/patches/22-multiqueue.patch index f367d2947134..0aa0ec6fd1c0 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 -@@ -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) diff --git a/patches/25-multicast-list_head.patch b/patches/25-multicast-list_head.patch index 0aafb1b34274..6d25c32f81e5 100644 --- a/patches/25-multicast-list_head.patch +++ b/patches/25-multicast-list_head.patch @@ -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); diff --git a/patches/31-backport-sk_add_backlog.patch b/patches/31-backport-sk_add_backlog.patch index 916d31fdace7..1a00cfc81559 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_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 { diff --git a/patches/34-backport-bin_attribute.patch b/patches/34-backport-bin_attribute.patch index ce53635e7dcb..d26be7932f95 100644 --- a/patches/34-backport-bin_attribute.patch +++ b/patches/34-backport-bin_attribute.patch @@ -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 diff --git a/patches/36-workqueue.patch b/patches/36-workqueue.patch index dfa6d8b4eccb..b803f511aeb4 100644 --- a/patches/36-workqueue.patch +++ b/patches/36-workqueue.patch @@ -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(); diff --git a/patches/99-change-makefiles.patch b/patches/99-change-makefiles.patch index 187c11018a39..dcdad198548a 100644 --- a/patches/99-change-makefiles.patch +++ b/patches/99-change-makefiles.patch @@ -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 -- 2.30.2