diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-12-18 17:56:32 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-12-18 17:56:32 +0000 |
commit | 495d32b8aa88a654533a0e375ff6df14ebfda395 (patch) | |
tree | 3d0982f4acdc511c95f3e8ea4b28af4f98c36cba | |
parent | 1433ed72bf3f04ee80362572240da980e69d7672 (diff) |
mac80211: fix a crash in the tx path
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24672 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | package/mac80211/patches/541-mac80211_fix_skb_copy_crash.patch | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/package/mac80211/patches/541-mac80211_fix_skb_copy_crash.patch b/package/mac80211/patches/541-mac80211_fix_skb_copy_crash.patch new file mode 100644 index 0000000000..810df58506 --- /dev/null +++ b/package/mac80211/patches/541-mac80211_fix_skb_copy_crash.patch @@ -0,0 +1,19 @@ +--- a/net/mac80211/tx.c ++++ b/net/mac80211/tx.c +@@ -1748,7 +1748,7 @@ netdev_tx_t ieee80211_subif_start_xmit(s + { + struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev); + struct ieee80211_local *local = sdata->local; +- struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); ++ struct ieee80211_tx_info *info; + int ret = NETDEV_TX_BUSY, head_need; + u16 ethertype, hdrlen, meshhdrlen = 0; + __le16 fc; +@@ -2039,6 +2039,7 @@ netdev_tx_t ieee80211_subif_start_xmit(s + skb_set_network_header(skb, nh_pos); + skb_set_transport_header(skb, h_pos); + ++ info = IEEE80211_SKB_CB(skb); + memset(info, 0, sizeof(*info)); + + dev->trans_start = jiffies; |