]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/2.6.32.10/rndis_wlan-disable-stall-workaround.patch
5.1-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 2.6.32.10 / rndis_wlan-disable-stall-workaround.patch
CommitLineData
f153d79a
GKH
1From 77593ae28c4c134eaf28ef34ecac3cd4464ecd6e Mon Sep 17 00:00:00 2001
2From: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
3Date: Sun, 22 Nov 2009 20:16:47 +0200
4Subject: rndis_wlan: disable stall workaround
5
6From: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
7
8commit 77593ae28c4c134eaf28ef34ecac3cd4464ecd6e upstream.
9
10Stall workaround doesn't work with bcm4320a devices like with bcm4320b.
11This workaround actually causes more stalls/device freeze on bcm4320a.
12Therefore disable stall workaround by default.
13
14Signed-off-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
15Signed-off-by: John W. Linville <linville@tuxdriver.com>
16Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17
18---
19 drivers/net/wireless/rndis_wlan.c | 6 +++---
20 1 file changed, 3 insertions(+), 3 deletions(-)
21
22--- a/drivers/net/wireless/rndis_wlan.c
23+++ b/drivers/net/wireless/rndis_wlan.c
24@@ -83,11 +83,11 @@ MODULE_PARM_DESC(roamdelta,
25 "set roaming tendency: 0=aggressive, 1=moderate, "
26 "2=conservative (default: moderate)");
27
28-static int modparam_workaround_interval = 500;
29+static int modparam_workaround_interval;
30 module_param_named(workaround_interval, modparam_workaround_interval,
31 int, 0444);
32 MODULE_PARM_DESC(workaround_interval,
33- "set stall workaround interval in msecs (default: 500)");
34+ "set stall workaround interval in msecs (0=disabled) (default: 0)");
35
36
37 /* various RNDIS OID defs */
38@@ -2550,7 +2550,7 @@ static void rndis_device_poller(struct w
39 /* Workaround transfer stalls on poor quality links.
40 * TODO: find right way to fix these stalls (as stalls do not happen
41 * with ndiswrapper/windows driver). */
42- if (priv->last_qual <= 25) {
43+ if (priv->param_workaround_interval > 0 && priv->last_qual <= 25) {
44 /* Decrease stats worker interval to catch stalls.
45 * faster. Faster than 400-500ms causes packet loss,
46 * Slower doesn't catch stalls fast enough.