aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/util.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2011-11-16 09:28:55 -0500
committerJohn W. Linville <linville@tuxdriver.com>2011-11-21 16:20:42 -0500
commit252b86c43225d067468dd182e9ae616ad2532bc8 (patch)
treed584ef11ebd143960c1890e361a89653fb9812c9 /net/mac80211/util.c
parent83c76570961573e56a238d84ba18f2581ef1e6b5 (diff)
mac80211: use skb list for fragments
We are currently linking the skbs by using skb->next directly. This works, but the preferred way is to use a struct sk_buff_head instead. That also prepares for passing that to drivers directly. While at it I noticed we calculate the duration for fragments twice -- remove one of them. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/util.c')
-rw-r--r--net/mac80211/util.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/net/mac80211/util.c b/net/mac80211/util.c
index 4cf25b0eea74..939bf248ec73 100644
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
@@ -95,13 +95,13 @@ u8 *ieee80211_get_bssid(struct ieee80211_hdr *hdr, size_t len,
95 95
96void ieee80211_tx_set_protected(struct ieee80211_tx_data *tx) 96void ieee80211_tx_set_protected(struct ieee80211_tx_data *tx)
97{ 97{
98 struct sk_buff *skb = tx->skb; 98 struct sk_buff *skb;
99 struct ieee80211_hdr *hdr; 99 struct ieee80211_hdr *hdr;
100 100
101 do { 101 skb_queue_walk(&tx->skbs, skb) {
102 hdr = (struct ieee80211_hdr *) skb->data; 102 hdr = (struct ieee80211_hdr *) skb->data;
103 hdr->frame_control |= cpu_to_le16(IEEE80211_FCTL_PROTECTED); 103 hdr->frame_control |= cpu_to_le16(IEEE80211_FCTL_PROTECTED);
104 } while ((skb = skb->next)); 104 }
105} 105}
106 106
107int ieee80211_frame_duration(struct ieee80211_local *local, size_t len, 107int ieee80211_frame_duration(struct ieee80211_local *local, size_t len,