summaryrefslogtreecommitdiffstats
path: root/package/madwifi
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-04-04 09:36:05 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-04-04 09:36:05 +0000
commit839f02c0ca663564c6cedf9f26c333f79a5a81c9 (patch)
tree8d1c6e798f7c054540ed485ee475a9c991dfd090 /package/madwifi
parent2a7cc111290970479909055678571fd52585ae7e (diff)
madwifi: fix crash under load
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15099 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/madwifi')
-rw-r--r--package/madwifi/patches/419-skb_unmap_crash.patch20
1 files changed, 20 insertions, 0 deletions
diff --git a/package/madwifi/patches/419-skb_unmap_crash.patch b/package/madwifi/patches/419-skb_unmap_crash.patch
new file mode 100644
index 000000000..28e72747c
--- /dev/null
+++ b/package/madwifi/patches/419-skb_unmap_crash.patch
@@ -0,0 +1,20 @@
+--- a/ath/if_ath.c
++++ b/ath/if_ath.c
+@@ -13477,7 +13477,7 @@ cleanup_ath_buf(struct ath_softc *sc, st
+ if (bf == NULL)
+ return bf;
+
+- if (bf->bf_skbaddr) {
++ if (bf->bf_skb && bf->bf_skbaddr) {
+ bus_unmap_single(
+ sc->sc_bdev,
+ bf->bf_skbaddr,
+@@ -13485,8 +13485,6 @@ cleanup_ath_buf(struct ath_softc *sc, st
+ sc->sc_rxbufsize : bf->bf_skb->len),
+ direction);
+ bf->bf_skbaddr = 0;
+- bf->bf_desc->ds_link = 0;
+- bf->bf_desc->ds_data = 0;
+ }
+
+ #ifdef ATH_SUPERG_FF