aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211
diff options
context:
space:
mode:
authorRon Rindjunsky <ron.rindjunsky@intel.com>2007-11-29 10:35:53 +0200
committerDavid S. Miller <davem@davemloft.net>2008-01-28 14:55:34 -0800
commit64bd4b693f2d0b59673086e9c510068d5ad47cee (patch)
tree459ecf549453d6fe90c31f8765d9b49468847de3 /net/mac80211
parentd3c990fb26b78f60614885d9ecaf7b7686b7b098 (diff)
downloadkernel_samsung_smdk4412-64bd4b693f2d0b59673086e9c510068d5ad47cee.zip
kernel_samsung_smdk4412-64bd4b693f2d0b59673086e9c510068d5ad47cee.tar.gz
kernel_samsung_smdk4412-64bd4b693f2d0b59673086e9c510068d5ad47cee.tar.bz2
mac80211: move A-MSDU identifier to flags
This patch moves u8 amsdu_frame in ieee80211_txrx_data to the flags section as IEEE80211_TXRXD_RX_AMSDU Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/mac80211')
-rw-r--r--net/mac80211/ieee80211_i.h2
-rw-r--r--net/mac80211/rx.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
index 2dcb942..b54ed5f 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -123,6 +123,7 @@ typedef enum {
/* frame is destined to interface currently processed (incl. multicast frames) */
#define IEEE80211_TXRXD_RXRA_MATCH BIT(5)
#define IEEE80211_TXRXD_TX_INJECTED BIT(6)
+#define IEEE80211_TXRXD_RX_AMSDU BIT(7)
struct ieee80211_txrx_data {
struct sk_buff *skb;
struct net_device *dev;
@@ -155,7 +156,6 @@ struct ieee80211_txrx_data {
int load;
u32 tkip_iv32;
u16 tkip_iv16;
- u8 amsdu_frame;
} rx;
} u;
};
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index 4525d73..0020e40 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -244,9 +244,9 @@ ieee80211_rx_h_parse_qos(struct ieee80211_txrx_data *rx)
/* frame has qos control */
tid = qc[0] & QOS_CONTROL_TID_MASK;
if (qc[0] & IEEE80211_QOS_CONTROL_A_MSDU_PRESENT)
- rx->u.rx.amsdu_frame = 1;
+ rx->flags |= IEEE80211_TXRXD_RX_AMSDU;
else
- rx->u.rx.amsdu_frame = 0;
+ rx->flags &= ~IEEE80211_TXRXD_RX_AMSDU;
} else {
if (unlikely((rx->fc & IEEE80211_FCTL_FTYPE) == IEEE80211_FTYPE_MGMT)) {
/* Separate TID for management frames */
@@ -1221,7 +1221,7 @@ ieee80211_rx_h_amsdu(struct ieee80211_txrx_data *rx)
if (unlikely(!WLAN_FC_DATA_PRESENT(fc)))
return TXRX_DROP;
- if (!rx->u.rx.amsdu_frame)
+ if (!(rx->flags & IEEE80211_TXRXD_RX_AMSDU))
return TXRX_CONTINUE;
err = ieee80211_data_to_8023(rx);