diff options
author | David S. Miller <davem@davemloft.net> | 2010-05-17 21:09:11 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-05-17 21:09:11 -0700 |
commit | 820ae8a80eb59962aefbbd4908dfe144ec0f9edb (patch) | |
tree | 6c0f7356afff14e1c7d266de644810cd2de7caa9 /net/mac80211/rx.c | |
parent | 380fefb2ddabd4cd5f14dbe090481f0544e65078 (diff) | |
parent | 6fe70aae0d128339febfabc073ba4c4a03de4f45 (diff) |
Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r-- | net/mac80211/rx.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 9a08f2c446c..6e2a7bcd8cb 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c @@ -1253,6 +1253,12 @@ ieee80211_rx_h_defragment(struct ieee80211_rx_data *rx) if (skb_linearize(rx->skb)) return RX_DROP_UNUSABLE; + /* + * skb_linearize() might change the skb->data and + * previously cached variables (in this case, hdr) need to + * be refreshed with the new data. + */ + hdr = (struct ieee80211_hdr *)rx->skb->data; seq = (sc & IEEE80211_SCTL_SEQ) >> 4; if (frag == 0) { |