aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/020-02-rt2x00usb-do-not-anchor-rx-and-tx-urb-s.patch
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2017-08-22 23:59:48 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2017-10-01 12:49:11 +0200
commita8f63a0717f553e0a1b37ee9212fc4cb2a801426 (patch)
tree9016b975706f35b98075167f2cf6b15add308c9b /package/kernel/mac80211/patches/020-02-rt2x00usb-do-not-anchor-rx-and-tx-urb-s.patch
parent1114f5dc10755e3c92b5711b420818cf9e366874 (diff)
downloadupstream-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.tar.gz
upstream-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.tar.bz2
upstream-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.zip
mac80211: update to backports-4.14-rc2
This updates mac80211 to backprots-4.14-rc2. This was compile and runtime tested with ath9k, ath10k and b43 with multiple stations and ieee80211w and in different scenarios by many other people. To create the backports-4.14-rc2-1.tar.xz use this repository: https://git.kernel.org/pub/scm/linux/kernel/git/backports/backports.git from tag v4.14-rc2-1 Then run this: ./gentree.py --git-revision v4.14-rc2 --clean <path to linux repo> ../backports-4.14-rc2-1 This also adapts the ath10k-ct and mt76 driver to the changed cfg80211 APIs and syncs the nl80211.h file in iw with the new version from backports-4.14-rc2. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'package/kernel/mac80211/patches/020-02-rt2x00usb-do-not-anchor-rx-and-tx-urb-s.patch')
-rw-r--r--package/kernel/mac80211/patches/020-02-rt2x00usb-do-not-anchor-rx-and-tx-urb-s.patch56
1 files changed, 0 insertions, 56 deletions
diff --git a/package/kernel/mac80211/patches/020-02-rt2x00usb-do-not-anchor-rx-and-tx-urb-s.patch b/package/kernel/mac80211/patches/020-02-rt2x00usb-do-not-anchor-rx-and-tx-urb-s.patch
deleted file mode 100644
index d096b64a8a..0000000000
--- a/package/kernel/mac80211/patches/020-02-rt2x00usb-do-not-anchor-rx-and-tx-urb-s.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 93c7018ec16bb83399dd4db61c361a6d6aba0d5a Mon Sep 17 00:00:00 2001
-From: Stanislaw Gruszka <sgruszka@redhat.com>
-Date: Wed, 8 Feb 2017 12:18:09 +0100
-Subject: [PATCH 02/19] rt2x00usb: do not anchor rx and tx urb's
-
-We might kill TX or RX urb during rt2x00usb_flush_entry(), what can
-cause anchor list corruption like shown below:
-
-[ 2074.035633] WARNING: CPU: 2 PID: 14480 at lib/list_debug.c:33 __list_add+0xac/0xc0
-[ 2074.035634] list_add corruption. prev->next should be next (ffff88020f362c28), but was dead000000000100. (prev=ffff8801d161bb70).
-<snip>
-[ 2074.035670] Call Trace:
-[ 2074.035672] [<ffffffff813bde47>] dump_stack+0x63/0x8c
-[ 2074.035674] [<ffffffff810a2231>] __warn+0xd1/0xf0
-[ 2074.035676] [<ffffffff810a22af>] warn_slowpath_fmt+0x5f/0x80
-[ 2074.035678] [<ffffffffa073855d>] ? rt2x00usb_register_write_lock+0x3d/0x60 [rt2800usb]
-[ 2074.035679] [<ffffffff813dbe4c>] __list_add+0xac/0xc0
-[ 2074.035681] [<ffffffff81591c6c>] usb_anchor_urb+0x4c/0xa0
-[ 2074.035683] [<ffffffffa07322af>] rt2x00usb_kick_rx_entry+0xaf/0x100 [rt2x00usb]
-[ 2074.035684] [<ffffffffa0732322>] rt2x00usb_clear_entry+0x22/0x30 [rt2x00usb]
-
-To fix do not anchor TX and RX urb's, it is not needed as during
-shutdown we kill those urbs in rt2x00usb_free_entries().
-
-Cc: Vishal Thanki <vishalthanki@gmail.com>
-Fixes: 8b4c0009313f ("rt2x00usb: Use usb anchor to manage URB")
-Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
-Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
----
- drivers/net/wireless/ralink/rt2x00/rt2x00usb.c | 4 ----
- 1 file changed, 4 deletions(-)
-
---- a/drivers/net/wireless/ralink/rt2x00/rt2x00usb.c
-+++ b/drivers/net/wireless/ralink/rt2x00/rt2x00usb.c
-@@ -319,10 +319,8 @@ static bool rt2x00usb_kick_tx_entry(stru
- entry->skb->data, length,
- rt2x00usb_interrupt_txdone, entry);
-
-- usb_anchor_urb(entry_priv->urb, rt2x00dev->anchor);
- status = usb_submit_urb(entry_priv->urb, GFP_ATOMIC);
- if (status) {
-- usb_unanchor_urb(entry_priv->urb);
- if (status == -ENODEV)
- clear_bit(DEVICE_STATE_PRESENT, &rt2x00dev->flags);
- set_bit(ENTRY_DATA_IO_FAILED, &entry->flags);
-@@ -410,10 +408,8 @@ static bool rt2x00usb_kick_rx_entry(stru
- entry->skb->data, entry->skb->len,
- rt2x00usb_interrupt_rxdone, entry);
-
-- usb_anchor_urb(entry_priv->urb, rt2x00dev->anchor);
- status = usb_submit_urb(entry_priv->urb, GFP_ATOMIC);
- if (status) {
-- usb_unanchor_urb(entry_priv->urb);
- if (status == -ENODEV)
- clear_bit(DEVICE_STATE_PRESENT, &rt2x00dev->flags);
- set_bit(ENTRY_DATA_IO_FAILED, &entry->flags);