diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-11-24 01:48:23 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-11-24 01:48:23 +0000 |
commit | ed1b2eb613c96987bb7c191b1c17734e457a0fb7 (patch) | |
tree | bbfd57dc85a64defca8a392237318c5728847933 /target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch | |
parent | e29da0f4237ccc08d0bf4ff3829f24f36ae8445f (diff) |
add a workaround for a race-condition in the wl driver (triggered by ap+sta mode in a bridge)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@5635 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch')
-rw-r--r-- | target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch b/target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch new file mode 100644 index 0000000000..8a472cd6f1 --- /dev/null +++ b/target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch @@ -0,0 +1,14 @@ +--- linux.old/net/sched/sch_generic.c 2006-11-24 02:42:23.000000000 +0100 ++++ linux.dev/net/sched/sch_generic.c 2006-11-24 02:36:58.000000000 +0100 +@@ -84,6 +84,11 @@ + struct sk_buff *skb; + + /* Dequeue packet */ ++ if (!q) { ++ if (net_ratelimit()) ++ printk(KERN_DEBUG "HELP ME! qdisc_restart called, but no Qdisc!\n"); ++ return 0; ++ } + if ((skb = q->dequeue(q)) != NULL) { + if (spin_trylock(&dev->xmit_lock)) { + /* Remember that the driver is grabbed by us. */ |