Search Linux Wireless

[PATCH 1/4] compat-drivers: update pending-stable patches.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Bala Shanmugam <bkamatch@xxxxxxxxxxxxxxxx>
---
 pending-stable/.ignore                             |    6 +
 ...g-restore-previous-behaviour-of-chan-max_.patch |   60 ----------
 .../0011-mac80211-cancel-mesh-path-timer.patch     |   30 -----
 ...ooth-Fix-legacy-pairing-with-some-devices.patch |  120 ++++++++++++++++++++
 ...ocess-pending-events-when-unregistering-n.patch |   70 ------------
 ...14-Bluetooth-Fix-using-NULL-inquiry-entry.patch |   33 ++++++
 ...-NULL-pointer-dereference-in-config_lna_g.patch |   37 ------
 ...ooth-Fix-using-a-NULL-inquiry-cache-entry.patch |   51 ++++++++
 ...et-name_state-to-unknown-when-entry-name-.patch |   32 +++++
 .../0020-ath9k-stop-btcoex-on-device-suspend.patch |   31 +++++
 ...remove-__devinit-from-the-struct-usb_devi.patch |   41 +++++++
 ...-remove-__devinit-from-the-struct-usb_dev.patch |   43 +++++++
 ...0001-ath9k-Add-PID-VID-support-for-AR1111.patch |   61 ----------
 ...able-greenfield-transmissions-as-a-workar.patch |   52 ---------
 14 files changed, 357 insertions(+), 310 deletions(-)
 delete mode 100644 pending-stable/0010-wireless-reg-restore-previous-behaviour-of-chan-max_.patch
 delete mode 100644 pending-stable/0011-mac80211-cancel-mesh-path-timer.patch
 create mode 100644 pending-stable/0013-Bluetooth-Fix-legacy-pairing-with-some-devices.patch
 delete mode 100644 pending-stable/0013-cfg80211-process-pending-events-when-unregistering-n.patch
 create mode 100644 pending-stable/0014-Bluetooth-Fix-using-NULL-inquiry-entry.patch
 delete mode 100644 pending-stable/0014-rt61pci-fix-NULL-pointer-dereference-in-config_lna_g.patch
 create mode 100644 pending-stable/0015-Bluetooth-Fix-using-a-NULL-inquiry-cache-entry.patch
 create mode 100644 pending-stable/0016-Bluetooth-Set-name_state-to-unknown-when-entry-name-.patch
 create mode 100644 pending-stable/0020-ath9k-stop-btcoex-on-device-suspend.patch
 create mode 100644 pending-stable/0021-USB-p54usb-remove-__devinit-from-the-struct-usb_devi.patch
 create mode 100644 pending-stable/0022-USB-rtl8187-remove-__devinit-from-the-struct-usb_dev.patch
 delete mode 100644 pending-stable/backports/0001-ath9k-Add-PID-VID-support-for-AR1111.patch
 delete mode 100644 pending-stable/backports/0002-iwlwifi-disable-greenfield-transmissions-as-a-workar.patch

diff --git a/pending-stable/.ignore b/pending-stable/.ignore
index beb0139..6621615 100644
--- a/pending-stable/.ignore
+++ b/pending-stable/.ignore
@@ -9,3 +9,9 @@ rtlwifi-rtl8192cu-Change-buffer-allocation-for-synch.patch
 rtlwifi-rtl8192de-Fix-phy-based-version-calculation.patch
 b43-fix-crash-with-OpenFWWF.patch
 atl1c-fix-issue-of-io-access-mode-for-AR8152-v2.1.patch
+wireless-reg-restore-previous-behaviour-of-chan-max_.patch
+mac80211-cancel-mesh-path-timer.patch
+cfg80211-process-pending-events-when-unregistering-n.patch
+rt61pci-fix-NULL-pointer-dereference-in-config_lna_g.patch
+iwlwifi-fix-flow-handler-debug-code.patch
+iwlwifi-protect-SRAM-debugfs.patch
diff --git a/pending-stable/0010-wireless-reg-restore-previous-behaviour-of-chan-max_.patch b/pending-stable/0010-wireless-reg-restore-previous-behaviour-of-chan-max_.patch
deleted file mode 100644
index f2b845d..0000000
--- a/pending-stable/0010-wireless-reg-restore-previous-behaviour-of-chan-max_.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 5e31fc0815a4e2c72b1b495fe7a0d8f9bfb9e4b4 Mon Sep 17 00:00:00 2001
-From: Stanislaw Gruszka <sgruszka@xxxxxxxxxx>
-Date: Tue, 24 Jul 2012 08:35:39 +0200
-Subject: [PATCH 10/15] wireless: reg: restore previous behaviour of
- chan->max_power calculations
-
-commit eccc068e8e84c8fe997115629925e0422a98e4de
-Author: Hong Wu <Hong.Wu@xxxxxxxx>
-Date:   Wed Jan 11 20:33:39 2012 +0200
-
-    wireless: Save original maximum regulatory transmission power for the calucation of the local maximum transmit pow
-
-changed the way we calculate chan->max_power as min(chan->max_power,
-chan->max_reg_power). That broke rt2x00 (and perhaps some other
-drivers) that do not set chan->max_power. It is not so easy to fix this
-problem correctly in rt2x00.
-
-According to commit eccc068e8 changelog, change claim only to save
-maximum regulatory power - changing setting of chan->max_power was side
-effect. This patch restore previous calculations of chan->max_power and
-do not touch chan->max_reg_power.
-
-Cc: stable@xxxxxxxxxxxxxxx # 3.4+
-Signed-off-by: Stanislaw Gruszka <sgruszka@xxxxxxxxxx>
-Acked-by: Luis R. Rodriguez <mcgrof@xxxxxxxxxxxxxxxx>
-Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
----
- net/wireless/reg.c |   16 +++++++++++++++-
- 1 file changed, 15 insertions(+), 1 deletion(-)
-
-diff --git a/net/wireless/reg.c b/net/wireless/reg.c
-index baf5704..460af03 100644
---- a/net/wireless/reg.c
-+++ b/net/wireless/reg.c
-@@ -891,7 +891,21 @@ static void handle_channel(struct wiphy *wiphy,
- 	chan->max_antenna_gain = min(chan->orig_mag,
- 		(int) MBI_TO_DBI(power_rule->max_antenna_gain));
- 	chan->max_reg_power = (int) MBM_TO_DBM(power_rule->max_eirp);
--	chan->max_power = min(chan->max_power, chan->max_reg_power);
-+	if (chan->orig_mpwr) {
-+		/*
-+		 * Devices that have their own custom regulatory domain
-+		 * but also use WIPHY_FLAG_STRICT_REGULATORY will follow the
-+		 * passed country IE power settings.
-+		 */
-+		if (initiator == NL80211_REGDOM_SET_BY_COUNTRY_IE &&
-+		    wiphy->flags & WIPHY_FLAG_CUSTOM_REGULATORY &&
-+		    wiphy->flags & WIPHY_FLAG_STRICT_REGULATORY)
-+			chan->max_power = chan->max_reg_power;
-+		else
-+			chan->max_power = min(chan->orig_mpwr,
-+					      chan->max_reg_power);
-+	} else
-+		chan->max_power = chan->max_reg_power;
- }
- 
- static void handle_band(struct wiphy *wiphy,
--- 
-1.7.10.4
-
diff --git a/pending-stable/0011-mac80211-cancel-mesh-path-timer.patch b/pending-stable/0011-mac80211-cancel-mesh-path-timer.patch
deleted file mode 100644
index 2d1a894..0000000
--- a/pending-stable/0011-mac80211-cancel-mesh-path-timer.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From dd4c9260e7f23f2e951cbfb2726e468c6d30306c Mon Sep 17 00:00:00 2001
-From: Johannes Berg <johannes.berg@xxxxxxxxx>
-Date: Wed, 1 Aug 2012 21:03:21 +0200
-Subject: [PATCH 11/15] mac80211: cancel mesh path timer
-
-The mesh path timer needs to be canceled when
-leaving the mesh as otherwise it could fire
-after the interface has been removed already.
-
-Cc: stable@xxxxxxxxxxxxxxx
-Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
----
- net/mac80211/mesh.c |    1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/net/mac80211/mesh.c b/net/mac80211/mesh.c
-index d60b3d3..8557235 100644
---- a/net/mac80211/mesh.c
-+++ b/net/mac80211/mesh.c
-@@ -622,6 +622,7 @@ void ieee80211_stop_mesh(struct ieee80211_sub_if_data *sdata)
- 
- 	del_timer_sync(&sdata->u.mesh.housekeeping_timer);
- 	del_timer_sync(&sdata->u.mesh.mesh_path_root_timer);
-+	del_timer_sync(&sdata->u.mesh.mesh_path_timer);
- 	/*
- 	 * If the timer fired while we waited for it, it will have
- 	 * requeued the work. Now the work will be running again
--- 
-1.7.10.4
-
diff --git a/pending-stable/0013-Bluetooth-Fix-legacy-pairing-with-some-devices.patch b/pending-stable/0013-Bluetooth-Fix-legacy-pairing-with-some-devices.patch
new file mode 100644
index 0000000..195de50
--- /dev/null
+++ b/pending-stable/0013-Bluetooth-Fix-legacy-pairing-with-some-devices.patch
@@ -0,0 +1,120 @@
+From a9ea3ed9b71cc3271dd59e76f65748adcaa76422 Mon Sep 17 00:00:00 2001
+From: Szymon Janc <szymon.janc@xxxxxxxxx>
+Date: Thu, 19 Jul 2012 14:46:08 +0200
+Subject: [PATCH 13/24] Bluetooth: Fix legacy pairing with some devices
+
+Some devices e.g. some Android based phones don't do SDP search before
+pairing and cancel legacy pairing when ACL is disconnected.
+
+PIN Code Request event which changes ACL timeout to HCI_PAIRING_TIMEOUT
+is only received after remote user entered PIN.
+
+In that case no L2CAP is connected so default HCI_DISCONN_TIMEOUT
+(2 seconds) is being used to timeout ACL connection. This results in
+problems with legacy pairing as remote user has only few seconds to
+enter PIN before ACL is disconnected.
+
+Increase disconnect timeout for incomming connection to
+HCI_PAIRING_TIMEOUT if SSP is disabled and no linkey exists.
+
+To avoid keeping ACL alive for too long after SDP search set ACL
+timeout back to HCI_DISCONN_TIMEOUT when L2CAP is connected.
+
+2012-07-19 13:24:43.413521 < HCI Command: Create Connection (0x01|0x0005) plen 13
+    bdaddr 00:02:72:D6:6A:3F ptype 0xcc18 rswitch 0x01 clkoffset 0x0000
+    Packet type: DM1 DM3 DM5 DH1 DH3 DH5
+2012-07-19 13:24:43.425224 > HCI Event: Command Status (0x0f) plen 4
+    Create Connection (0x01|0x0005) status 0x00 ncmd 1
+2012-07-19 13:24:43.885222 > HCI Event: Role Change (0x12) plen 8
+    status 0x00 bdaddr 00:02:72:D6:6A:3F role 0x01
+    Role: Slave
+2012-07-19 13:24:44.054221 > HCI Event: Connect Complete (0x03) plen 11
+    status 0x00 handle 42 bdaddr 00:02:72:D6:6A:3F type ACL encrypt 0x00
+2012-07-19 13:24:44.054313 < HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
+    handle 42
+2012-07-19 13:24:44.055176 > HCI Event: Page Scan Repetition Mode Change (0x20) plen 7
+    bdaddr 00:02:72:D6:6A:3F mode 0
+2012-07-19 13:24:44.056217 > HCI Event: Max Slots Change (0x1b) plen 3
+    handle 42 slots 5
+2012-07-19 13:24:44.059218 > HCI Event: Command Status (0x0f) plen 4
+    Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 0
+2012-07-19 13:24:44.062192 > HCI Event: Command Status (0x0f) plen 4
+    Unknown (0x00|0x0000) status 0x00 ncmd 1
+2012-07-19 13:24:44.067219 > HCI Event: Read Remote Supported Features (0x0b) plen 11
+    status 0x00 handle 42
+    Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
+2012-07-19 13:24:44.067248 < HCI Command: Read Remote Extended Features (0x01|0x001c) plen 3
+    handle 42 page 1
+2012-07-19 13:24:44.071217 > HCI Event: Command Status (0x0f) plen 4
+    Read Remote Extended Features (0x01|0x001c) status 0x00 ncmd 1
+2012-07-19 13:24:44.076218 > HCI Event: Read Remote Extended Features (0x23) plen 13
+    status 0x00 handle 42 page 1 max 1
+    Features: 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00
+2012-07-19 13:24:44.076249 < HCI Command: Remote Name Request (0x01|0x0019) plen 10
+    bdaddr 00:02:72:D6:6A:3F mode 2 clkoffset 0x0000
+2012-07-19 13:24:44.081218 > HCI Event: Command Status (0x0f) plen 4
+    Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
+2012-07-19 13:24:44.105214 > HCI Event: Remote Name Req Complete (0x07) plen 255
+    status 0x00 bdaddr 00:02:72:D6:6A:3F name 'uw000951-0'
+2012-07-19 13:24:44.105284 < HCI Command: Authentication Requested (0x01|0x0011) plen 2
+    handle 42
+2012-07-19 13:24:44.111207 > HCI Event: Command Status (0x0f) plen 4
+    Authentication Requested (0x01|0x0011) status 0x00 ncmd 1
+2012-07-19 13:24:44.112220 > HCI Event: Link Key Request (0x17) plen 6
+    bdaddr 00:02:72:D6:6A:3F
+2012-07-19 13:24:44.112249 < HCI Command: Link Key Request Negative Reply (0x01|0x000c) plen 6
+    bdaddr 00:02:72:D6:6A:3F
+2012-07-19 13:24:44.115215 > HCI Event: Command Complete (0x0e) plen 10
+    Link Key Request Negative Reply (0x01|0x000c) ncmd 1
+    status 0x00 bdaddr 00:02:72:D6:6A:3F
+2012-07-19 13:24:44.116215 > HCI Event: PIN Code Request (0x16) plen 6
+    bdaddr 00:02:72:D6:6A:3F
+2012-07-19 13:24:48.099184 > HCI Event: Auth Complete (0x06) plen 3
+    status 0x13 handle 42
+    Error: Remote User Terminated Connection
+2012-07-19 13:24:48.179182 > HCI Event: Disconn Complete (0x05) plen 4
+    status 0x00 handle 42 reason 0x13
+    Reason: Remote User Terminated Connection
+
+Cc: stable@xxxxxxxxxxxxxxx
+Signed-off-by: Szymon Janc <szymon.janc@xxxxxxxxx>
+Acked-by: Johan Hedberg <johan.hedberg@xxxxxxxxx>
+Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
+---
+ net/bluetooth/hci_event.c  | 7 ++++++-
+ net/bluetooth/l2cap_core.c | 1 +
+ 2 files changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
+index 41ff978..248632c 100644
+--- a/net/bluetooth/hci_event.c
++++ b/net/bluetooth/hci_event.c
+@@ -1762,7 +1762,12 @@ static void hci_conn_complete_evt(struct hci_dev *hdev, struct sk_buff *skb)
+ 		if (conn->type == ACL_LINK) {
+ 			conn->state = BT_CONFIG;
+ 			hci_conn_hold(conn);
+-			conn->disc_timeout = HCI_DISCONN_TIMEOUT;
++
++			if (!conn->out && !hci_conn_ssp_enabled(conn) &&
++			    !hci_find_link_key(hdev, &ev->bdaddr))
++				conn->disc_timeout = HCI_PAIRING_TIMEOUT;
++			else
++				conn->disc_timeout = HCI_DISCONN_TIMEOUT;
+ 		} else
+ 			conn->state = BT_CONNECTED;
+ 
+diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
+index a8964db..daa149b 100644
+--- a/net/bluetooth/l2cap_core.c
++++ b/net/bluetooth/l2cap_core.c
+@@ -1181,6 +1181,7 @@ static void l2cap_le_conn_ready(struct l2cap_conn *conn)
+ 	sk = chan->sk;
+ 
+ 	hci_conn_hold(conn->hcon);
++	conn->hcon->disc_timeout = HCI_DISCONN_TIMEOUT;
+ 
+ 	bacpy(&bt_sk(sk)->src, conn->src);
+ 	bacpy(&bt_sk(sk)->dst, conn->dst);
+-- 
+1.7.11.4
+
diff --git a/pending-stable/0013-cfg80211-process-pending-events-when-unregistering-n.patch b/pending-stable/0013-cfg80211-process-pending-events-when-unregistering-n.patch
deleted file mode 100644
index a7d66ec..0000000
--- a/pending-stable/0013-cfg80211-process-pending-events-when-unregistering-n.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From 1f6fc43e621167492ed4b7f3b4269c584c3d6ccc Mon Sep 17 00:00:00 2001
-From: Daniel Drake <dsd@xxxxxxxxxx>
-Date: Thu, 2 Aug 2012 18:41:48 +0100
-Subject: [PATCH 13/15] cfg80211: process pending events when unregistering
- net device
-
-libertas currently calls cfg80211_disconnected() when it is being
-brought down. This causes an event to be allocated, but since the
-wdev is already removed from the rdev by the time that the event
-processing work executes, the event is never processed or freed.
-http://article.gmane.org/gmane.linux.kernel.wireless.general/95666
-
-Fix this leak, and other possible situations, by processing the event
-queue when a device is being unregistered. Thanks to Johannes Berg for
-the suggestion.
-
-Signed-off-by: Daniel Drake <dsd@xxxxxxxxxx>
-Cc: stable@xxxxxxxxxxxxxxx
-Reviewed-by: Johannes Berg <johannes@xxxxxxxxxxxxxxxx>
-Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
----
- net/wireless/core.c |    5 +++++
- net/wireless/core.h |    1 +
- net/wireless/util.c |    2 +-
- 3 files changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/net/wireless/core.c b/net/wireless/core.c
-index 31b40cc..dcd64d5 100644
---- a/net/wireless/core.c
-+++ b/net/wireless/core.c
-@@ -952,6 +952,11 @@ static int cfg80211_netdev_notifier_call(struct notifier_block *nb,
- 		 */
- 		synchronize_rcu();
- 		INIT_LIST_HEAD(&wdev->list);
-+		/*
-+		 * Ensure that all events have been processed and
-+		 * freed.
-+		 */
-+		cfg80211_process_wdev_events(wdev);
- 		break;
- 	case NETDEV_PRE_UP:
- 		if (!(wdev->wiphy->interface_modes & BIT(wdev->iftype)))
-diff --git a/net/wireless/core.h b/net/wireless/core.h
-index 5206c68..bc7430b 100644
---- a/net/wireless/core.h
-+++ b/net/wireless/core.h
-@@ -426,6 +426,7 @@ int cfg80211_change_iface(struct cfg80211_registered_device *rdev,
- 			  struct net_device *dev, enum nl80211_iftype ntype,
- 			  u32 *flags, struct vif_params *params);
- void cfg80211_process_rdev_events(struct cfg80211_registered_device *rdev);
-+void cfg80211_process_wdev_events(struct wireless_dev *wdev);
- 
- int cfg80211_can_use_iftype_chan(struct cfg80211_registered_device *rdev,
- 				 struct wireless_dev *wdev,
-diff --git a/net/wireless/util.c b/net/wireless/util.c
-index 26f8cd3..994e2f0 100644
---- a/net/wireless/util.c
-+++ b/net/wireless/util.c
-@@ -735,7 +735,7 @@ void cfg80211_upload_connect_keys(struct wireless_dev *wdev)
- 	wdev->connect_keys = NULL;
- }
- 
--static void cfg80211_process_wdev_events(struct wireless_dev *wdev)
-+void cfg80211_process_wdev_events(struct wireless_dev *wdev)
- {
- 	struct cfg80211_event *ev;
- 	unsigned long flags;
--- 
-1.7.10.4
-
diff --git a/pending-stable/0014-Bluetooth-Fix-using-NULL-inquiry-entry.patch b/pending-stable/0014-Bluetooth-Fix-using-NULL-inquiry-entry.patch
new file mode 100644
index 0000000..35f9eee
--- /dev/null
+++ b/pending-stable/0014-Bluetooth-Fix-using-NULL-inquiry-entry.patch
@@ -0,0 +1,33 @@
+From c810089c27e48b816181b454fcc493d19fdbc2ba Mon Sep 17 00:00:00 2001
+From: Ram Malovany <ramm@xxxxxx>
+Date: Thu, 19 Jul 2012 10:26:09 +0300
+Subject: [PATCH 14/24] Bluetooth: Fix using NULL inquiry entry
+
+If entry wasn't found in the hci_inquiry_cache_lookup_resolve do not
+resolve the name.This will fix a kernel crash when trying to use NULL
+pointer.
+
+Cc: stable@xxxxxxxxxxxxxxx
+Signed-off-by: Ram Malovany <ramm@xxxxxx>
+Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
+---
+ net/bluetooth/hci_event.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
+index 248632c..b64cfa2 100644
+--- a/net/bluetooth/hci_event.c
++++ b/net/bluetooth/hci_event.c
+@@ -1365,6 +1365,9 @@ static bool hci_resolve_next_name(struct hci_dev *hdev)
+ 		return false;
+ 
+ 	e = hci_inquiry_cache_lookup_resolve(hdev, BDADDR_ANY, NAME_NEEDED);
++	if (!e)
++		return false;
++
+ 	if (hci_resolve_name(hdev, e) == 0) {
+ 		e->name_state = NAME_PENDING;
+ 		return true;
+-- 
+1.7.11.4
+
diff --git a/pending-stable/0014-rt61pci-fix-NULL-pointer-dereference-in-config_lna_g.patch b/pending-stable/0014-rt61pci-fix-NULL-pointer-dereference-in-config_lna_g.patch
deleted file mode 100644
index a79f26f..0000000
--- a/pending-stable/0014-rt61pci-fix-NULL-pointer-dereference-in-config_lna_g.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From deee0214def5d8a32b8112f11d9c2b1696e9c0cb Mon Sep 17 00:00:00 2001
-From: Stanislaw Gruszka <sgruszka@xxxxxxxxxx>
-Date: Fri, 3 Aug 2012 12:49:14 +0200
-Subject: [PATCH 14/15] rt61pci: fix NULL pointer dereference in
- config_lna_gain
-
-We can not pass NULL libconf->conf->channel to rt61pci_config() as it
-is dereferenced unconditionally in rt61pci_config_lna_gain() subroutine.
-
-Resolves:
-https://bugzilla.kernel.org/show_bug.cgi?id=44361
-
-Cc: stable@xxxxxxxxxxxxxxx
-Reported-and-tested-by: <dolohow@xxxxxxxxx>
-Signed-off-by: Stanislaw Gruszka <sgruszka@xxxxxxxxxx>
-Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
----
- drivers/net/wireless/rt2x00/rt61pci.c |    3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/drivers/net/wireless/rt2x00/rt61pci.c b/drivers/net/wireless/rt2x00/rt61pci.c
-index f322596..3f7bc5c 100644
---- a/drivers/net/wireless/rt2x00/rt61pci.c
-+++ b/drivers/net/wireless/rt2x00/rt61pci.c
-@@ -2243,8 +2243,7 @@ static void rt61pci_txdone(struct rt2x00_dev *rt2x00dev)
- 
- static void rt61pci_wakeup(struct rt2x00_dev *rt2x00dev)
- {
--	struct ieee80211_conf conf = { .flags = 0 };
--	struct rt2x00lib_conf libconf = { .conf = &conf };
-+	struct rt2x00lib_conf libconf = { .conf = &rt2x00dev->hw->conf };
- 
- 	rt61pci_config(rt2x00dev, &libconf, IEEE80211_CONF_CHANGE_PS);
- }
--- 
-1.7.10.4
-
diff --git a/pending-stable/0015-Bluetooth-Fix-using-a-NULL-inquiry-cache-entry.patch b/pending-stable/0015-Bluetooth-Fix-using-a-NULL-inquiry-cache-entry.patch
new file mode 100644
index 0000000..13d6d8a
--- /dev/null
+++ b/pending-stable/0015-Bluetooth-Fix-using-a-NULL-inquiry-cache-entry.patch
@@ -0,0 +1,51 @@
+From 7cc8380eb10347016d95bf6f9d842c2ae6d12932 Mon Sep 17 00:00:00 2001
+From: Ram Malovany <ramm@xxxxxx>
+Date: Thu, 19 Jul 2012 10:26:10 +0300
+Subject: [PATCH 15/24] Bluetooth: Fix using a NULL inquiry cache entry
+
+If the device was not found in a list of found devices names of which
+are pending.This may happen in a case when HCI Remote Name Request
+was sent as a part of incoming connection establishment procedure.
+Hence there is no need to continue resolving a next name as it will
+be done upon receiving another Remote Name Request Complete Event.
+This will fix a kernel crash when trying to use this entry to resolve
+the next name.
+
+Cc: stable@xxxxxxxxxxxxxxx
+Signed-off-by: Ram Malovany <ramm@xxxxxx>
+Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
+---
+ net/bluetooth/hci_event.c | 16 +++++++++++-----
+ 1 file changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
+index b64cfa2..fe9a3d6 100644
+--- a/net/bluetooth/hci_event.c
++++ b/net/bluetooth/hci_event.c
+@@ -1396,12 +1396,18 @@ static void hci_check_pending_name(struct hci_dev *hdev, struct hci_conn *conn,
+ 		return;
+ 
+ 	e = hci_inquiry_cache_lookup_resolve(hdev, bdaddr, NAME_PENDING);
+-	if (e) {
++	/* If the device was not found in a list of found devices names of which
++	 * are pending. there is no need to continue resolving a next name as it
++	 * will be done upon receiving another Remote Name Request Complete
++	 * Event */
++	if (!e)
++		return;
++
++	list_del(&e->list);
++	if (name) {
+ 		e->name_state = NAME_KNOWN;
+-		list_del(&e->list);
+-		if (name)
+-			mgmt_remote_name(hdev, bdaddr, ACL_LINK, 0x00,
+-					 e->data.rssi, name, name_len);
++		mgmt_remote_name(hdev, bdaddr, ACL_LINK, 0x00,
++				 e->data.rssi, name, name_len);
+ 	}
+ 
+ 	if (hci_resolve_next_name(hdev))
+-- 
+1.7.11.4
+
diff --git a/pending-stable/0016-Bluetooth-Set-name_state-to-unknown-when-entry-name-.patch b/pending-stable/0016-Bluetooth-Set-name_state-to-unknown-when-entry-name-.patch
new file mode 100644
index 0000000..98d89dc
--- /dev/null
+++ b/pending-stable/0016-Bluetooth-Set-name_state-to-unknown-when-entry-name-.patch
@@ -0,0 +1,32 @@
+From c3e7c0d90b14a3e7ac091d24cef09efb516d587b Mon Sep 17 00:00:00 2001
+From: Ram Malovany <ramm@xxxxxx>
+Date: Thu, 19 Jul 2012 10:26:11 +0300
+Subject: [PATCH 16/24] Bluetooth: Set name_state to unknown when entry name
+ is empty
+
+When the name of the given entry is empty , the state needs to be
+updated accordingly.
+
+Cc: stable@xxxxxxxxxxxxxxx
+Signed-off-by: Ram Malovany <ramm@xxxxxx>
+Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
+---
+ net/bluetooth/hci_event.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
+index fe9a3d6..715d7e3 100644
+--- a/net/bluetooth/hci_event.c
++++ b/net/bluetooth/hci_event.c
+@@ -1408,6 +1408,8 @@ static void hci_check_pending_name(struct hci_dev *hdev, struct hci_conn *conn,
+ 		e->name_state = NAME_KNOWN;
+ 		mgmt_remote_name(hdev, bdaddr, ACL_LINK, 0x00,
+ 				 e->data.rssi, name, name_len);
++	} else {
++		e->name_state = NAME_NOT_KNOWN;
+ 	}
+ 
+ 	if (hci_resolve_next_name(hdev))
+-- 
+1.7.11.4
+
diff --git a/pending-stable/0020-ath9k-stop-btcoex-on-device-suspend.patch b/pending-stable/0020-ath9k-stop-btcoex-on-device-suspend.patch
new file mode 100644
index 0000000..34923aa
--- /dev/null
+++ b/pending-stable/0020-ath9k-stop-btcoex-on-device-suspend.patch
@@ -0,0 +1,31 @@
+From e19f15ac6437624b6214b2f0ec0d69fb7eb205fa Mon Sep 17 00:00:00 2001
+From: Rajkumar Manoharan <rmanohar@xxxxxxxxxxxxxxxx>
+Date: Thu, 9 Aug 2012 12:37:26 +0530
+Subject: [PATCH 20/24] ath9k: stop btcoex on device suspend
+
+During suspend, the device will be moved to FULLSLEEP state.
+As btcoex is never been stopped, the btcoex timer is running
+and tries to access hw on fullsleep state. Fix that.
+
+Cc: stable@xxxxxxxxxxxxxxx
+Signed-off-by: Rajkumar Manoharan <rmanohar@xxxxxxxxxxxxxxxx>
+Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
+---
+ drivers/net/wireless/ath/ath9k/pci.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/drivers/net/wireless/ath/ath9k/pci.c b/drivers/net/wireless/ath/ath9k/pci.c
+index d455de9..a978984 100644
+--- a/drivers/net/wireless/ath/ath9k/pci.c
++++ b/drivers/net/wireless/ath/ath9k/pci.c
+@@ -321,6 +321,7 @@ static int ath_pci_suspend(struct device *device)
+ 	 * Otherwise the chip never moved to full sleep,
+ 	 * when no interface is up.
+ 	 */
++	ath9k_stop_btcoex(sc);
+ 	ath9k_hw_disable(sc->sc_ah);
+ 	ath9k_hw_setpower(sc->sc_ah, ATH9K_PM_FULL_SLEEP);
+ 
+-- 
+1.7.11.4
+
diff --git a/pending-stable/0021-USB-p54usb-remove-__devinit-from-the-struct-usb_devi.patch b/pending-stable/0021-USB-p54usb-remove-__devinit-from-the-struct-usb_devi.patch
new file mode 100644
index 0000000..c39d33c
--- /dev/null
+++ b/pending-stable/0021-USB-p54usb-remove-__devinit-from-the-struct-usb_devi.patch
@@ -0,0 +1,41 @@
+From b9c4167cbbafddac3462134013bc15e63e4c53ef Mon Sep 17 00:00:00 2001
+From: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
+Date: Fri, 17 Aug 2012 17:48:28 -0700
+Subject: [PATCH 21/24] USB: p54usb: remove __devinit* from the struct
+ usb_device_id table
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This structure needs to always stick around, even if CONFIG_HOTPLUG
+is disabled, otherwise we can oops when trying to probe a device that
+was added after the structure is thrown away.
+
+Thanks to Fengguang Wu and Bjørn Mork for tracking this issue down.
+
+Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
+Reported-by: Bjørn Mork <bjorn@xxxxxxx>
+Cc: stable <stable@xxxxxxxxxxxxxxx>
+CC: Christian Lamparter <chunkeey@xxxxxxxxxxxxxx>
+CC: "John W. Linville" <linville@xxxxxxxxxxxxx>
+Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
+---
+ drivers/net/wireless/p54/p54usb.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/wireless/p54/p54usb.c b/drivers/net/wireless/p54/p54usb.c
+index 7f207b6..effb044 100644
+--- a/drivers/net/wireless/p54/p54usb.c
++++ b/drivers/net/wireless/p54/p54usb.c
+@@ -42,7 +42,7 @@ MODULE_FIRMWARE("isl3887usb");
+  * whenever you add a new device.
+  */
+ 
+-static struct usb_device_id p54u_table[] __devinitdata = {
++static struct usb_device_id p54u_table[] = {
+ 	/* Version 1 devices (pci chip + net2280) */
+ 	{USB_DEVICE(0x0411, 0x0050)},	/* Buffalo WLI2-USB2-G54 */
+ 	{USB_DEVICE(0x045e, 0x00c2)},	/* Microsoft MN-710 */
+-- 
+1.7.11.4
+
diff --git a/pending-stable/0022-USB-rtl8187-remove-__devinit-from-the-struct-usb_dev.patch b/pending-stable/0022-USB-rtl8187-remove-__devinit-from-the-struct-usb_dev.patch
new file mode 100644
index 0000000..84a25a4
--- /dev/null
+++ b/pending-stable/0022-USB-rtl8187-remove-__devinit-from-the-struct-usb_dev.patch
@@ -0,0 +1,43 @@
+From a3433179d0822ccfa8e80aa4d1d52843bd2dcc63 Mon Sep 17 00:00:00 2001
+From: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
+Date: Fri, 17 Aug 2012 17:48:29 -0700
+Subject: [PATCH 22/24] USB: rtl8187: remove __devinit* from the struct
+ usb_device_id table
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This structure needs to always stick around, even if CONFIG_HOTPLUG
+is disabled, otherwise we can oops when trying to probe a device that
+was added after the structure is thrown away.
+
+Thanks to Fengguang Wu and Bjørn Mork for tracking this issue down.
+
+Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
+Reported-by: Bjørn Mork <bjorn@xxxxxxx>
+Cc: stable <stable@xxxxxxxxxxxxxxx>
+CC: Herton Ronaldo Krzesinski <herton@xxxxxxxxxxxxx>
+CC: Hin-Tak Leung <htl10@xxxxxxxxxxxxxxxxxxxxx>
+CC: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
+CC: "John W. Linville" <linville@xxxxxxxxxxxxx>
+Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
+---
+ drivers/net/wireless/rtl818x/rtl8187/dev.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/wireless/rtl818x/rtl8187/dev.c b/drivers/net/wireless/rtl818x/rtl8187/dev.c
+index 71a30b0..5330240 100644
+--- a/drivers/net/wireless/rtl818x/rtl8187/dev.c
++++ b/drivers/net/wireless/rtl818x/rtl8187/dev.c
+@@ -44,7 +44,7 @@ MODULE_AUTHOR("Larry Finger <Larry.Finger@xxxxxxxxxxxx>");
+ MODULE_DESCRIPTION("RTL8187/RTL8187B USB wireless driver");
+ MODULE_LICENSE("GPL");
+ 
+-static struct usb_device_id rtl8187_table[] __devinitdata = {
++static struct usb_device_id rtl8187_table[] = {
+ 	/* Asus */
+ 	{USB_DEVICE(0x0b05, 0x171d), .driver_info = DEVICE_RTL8187},
+ 	/* Belkin */
+-- 
+1.7.11.4
+
diff --git a/pending-stable/backports/0001-ath9k-Add-PID-VID-support-for-AR1111.patch b/pending-stable/backports/0001-ath9k-Add-PID-VID-support-for-AR1111.patch
deleted file mode 100644
index ef2a9b6..0000000
--- a/pending-stable/backports/0001-ath9k-Add-PID-VID-support-for-AR1111.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From d4e5979c0da95791aa717c18e162540c7a596360 Mon Sep 17 00:00:00 2001
-From: Mohammed Shafi Shajakhan <mohammed@xxxxxxxxxxxxxxxx>
-Date: Thu, 2 Aug 2012 11:58:50 +0530
-Subject: [PATCH 12/15] ath9k: Add PID/VID support for AR1111
-
-AR1111 is same as AR9485. The h/w
-difference between them is quite insignificant,
-Felix suggests only very few baseband features
-may not be available in AR1111. The h/w code for
-AR9485 is already present, so AR1111 should
-work fine with the addition of its PID/VID.
-
-Cc: stable@xxxxxxxxxxxxxxx [2.6.39+]
-Cc: Felix Bitterli <felixb@xxxxxxxxxxxxxxxx>
-Reported-by: Tim Bentley <Tim.Bentley@xxxxxxxxx>
-Signed-off-by: Mohammed Shafi Shajakhan <mohammed@xxxxxxxxxxxxxxxx>
-Tested-by: Tim Bentley <Tim.Bentley@xxxxxxxxx>
-Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
----
- drivers/net/wireless/ath/ath9k/hw.c  |    1 +
- drivers/net/wireless/ath/ath9k/hw.h  |    1 +
- drivers/net/wireless/ath/ath9k/pci.c |    1 +
- 3 files changed, 3 insertions(+)
-
-diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c
-index cfa91ab..60b6a9d 100644
---- a/drivers/net/wireless/ath/ath9k/hw.c
-+++ b/drivers/net/wireless/ath/ath9k/hw.c
-@@ -730,6 +730,7 @@ int ath9k_hw_init(struct ath_hw *ah)
- 	case AR9300_DEVID_QCA955X:
- 	case AR9300_DEVID_AR9580:
- 	case AR9300_DEVID_AR9462:
-+	case AR9485_DEVID_AR1111:
- 		break;
- 	default:
- 		if (common->bus_ops->ath_bus_type == ATH_USB)
---- a/drivers/net/wireless/ath/ath9k/hw.h
-+++ b/drivers/net/wireless/ath/ath9k/hw.h
-@@ -48,6 +48,7 @@
- #define AR9300_DEVID_AR9580	0x0033
- #define AR9300_DEVID_AR9462	0x0034
- #define AR9300_DEVID_AR9330	0x0035
-+#define AR9485_DEVID_AR1111	0x0037
- 
- #define AR5416_AR9100_DEVID	0x000b
- 
-diff --git a/drivers/net/wireless/ath/ath9k/pci.c b/drivers/net/wireless/ath/ath9k/pci.c
-index 87b89d5..d455de9 100644
---- a/drivers/net/wireless/ath/ath9k/pci.c
-+++ b/drivers/net/wireless/ath/ath9k/pci.c
-@@ -37,6 +37,7 @@ static DEFINE_PCI_DEVICE_TABLE(ath_pci_id_table) = {
- 	{ PCI_VDEVICE(ATHEROS, 0x0032) }, /* PCI-E  AR9485 */
- 	{ PCI_VDEVICE(ATHEROS, 0x0033) }, /* PCI-E  AR9580 */
- 	{ PCI_VDEVICE(ATHEROS, 0x0034) }, /* PCI-E  AR9462 */
-+	{ PCI_VDEVICE(ATHEROS, 0x0037) }, /* PCI-E  AR1111/AR9485 */
- 	{ 0 }
- };
- 
--- 
-1.7.10.4
-
diff --git a/pending-stable/backports/0002-iwlwifi-disable-greenfield-transmissions-as-a-workar.patch b/pending-stable/backports/0002-iwlwifi-disable-greenfield-transmissions-as-a-workar.patch
deleted file mode 100644
index 532fbaf..0000000
--- a/pending-stable/backports/0002-iwlwifi-disable-greenfield-transmissions-as-a-workar.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 50e2a30cf6fcaeb2d27360ba614dd169a10041c5 Mon Sep 17 00:00:00 2001
-From: Johannes Berg <johannes.berg@xxxxxxxxx>
-Date: Sun, 5 Aug 2012 18:31:46 +0200
-Subject: [PATCH 15/15] iwlwifi: disable greenfield transmissions as a
- workaround
-
-There's a bug that causes the rate scaling to get stuck
-when it has to use single-stream rates with a peer that
-can do GF and SGI; the two are incompatible so we can't
-use them together, but that causes the algorithm to not
-work at all, it always rejects updates.
-
-Disable greenfield for now to prevent that problem.
-
-Backported to v3.5 by: Luis R. Rodriguez <mcgrof@xxxxxxxxxxxxxxxx>
-
-Cc: stable@xxxxxxxxxxxxxxx
-Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
-Tested-by: Cesar Eduardo Barros <cesarb@xxxxxxxxxx>
-Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
-Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
----
- drivers/net/wireless/iwlwifi/dvm/rs.c |   13 ++++++++-----
- 1 file changed, 8 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-rs.c b/drivers/net/wireless/iwlwifi/iwl-agn-rs.c
-index 6fddd27..a82f46c 100644
---- a/drivers/net/wireless/iwlwifi/iwl-agn-rs.c
-+++ b/drivers/net/wireless/iwlwifi/iwl-agn-rs.c
-@@ -707,11 +707,14 @@ static int rs_toggle_antenna(u32 valid_ant, u32 *rate_n_flags,
-  */
- static bool rs_use_green(struct ieee80211_sta *sta)
- {
--	struct iwl_station_priv *sta_priv = (void *)sta->drv_priv;
--	struct iwl_rxon_context *ctx = sta_priv->ctx;
--
--	return (sta->ht_cap.cap & IEEE80211_HT_CAP_GRN_FLD) &&
--		!(ctx->ht.non_gf_sta_present);
-+	/*
-+	 * There's a bug somewhere in this code that causes the
-+	 * scaling to get stuck because GF+SGI can't be combined
-+	 * in SISO rates. Until we find that bug, disable GF, it
-+	 * has only limited benefit and we still interoperate with
-+	 * GF APs since we can always receive GF transmissions.
-+	 */
-+	return false;
- }
- 
- /**
--- 
-1.7.10.4
-
-- 
1.7.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux