diff mbox

mac80211: fix paged defragmentation

Message ID 1272488362-14603-1-git-send-email-abhijeet.kolekar@intel.com (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Abhijeet Kolekar April 28, 2010, 8:59 p.m. UTC
None
diff mbox

Patch

diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index 72efbd8..4126392 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -1234,14 +1234,16 @@  ieee80211_rx_h_defragment(struct ieee80211_rx_data *rx)
 {
 	struct ieee80211_hdr *hdr;
 	u16 sc;
-	__le16 fc;
+	__le16 fc, seq_ctrl;
 	unsigned int frag, seq;
 	struct ieee80211_fragment_entry *entry;
 	struct sk_buff *skb;
 
 	hdr = (struct ieee80211_hdr *)rx->skb->data;
 	fc = hdr->frame_control;
-	sc = le16_to_cpu(hdr->seq_ctrl);
+	skb_copy_bits(rx->skb, offsetof(struct ieee80211_hdr, seq_ctrl),
+			&seq_ctrl, sizeof(seq_ctrl));
+	sc = le16_to_cpu(seq_ctrl);
 	frag = sc & IEEE80211_SCTL_FRAG;
 
 	if (likely((!ieee80211_has_morefrags(fc) && frag == 0) ||