summaryrefslogtreecommitdiffstats
path: root/net/mac80211/rx.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r--net/mac80211/rx.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index b716fa2370b3..84f11733b9fe 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -741,6 +741,7 @@ static void ieee80211_rx_reorder_ampdu(struct ieee80211_rx_data *rx,
741 sc = le16_to_cpu(hdr->seq_ctrl); 741 sc = le16_to_cpu(hdr->seq_ctrl);
742 if (sc & IEEE80211_SCTL_FRAG) { 742 if (sc & IEEE80211_SCTL_FRAG) {
743 spin_unlock(&sta->lock); 743 spin_unlock(&sta->lock);
744 skb->pkt_type = IEEE80211_SDATA_QUEUE_TYPE_FRAME;
744 skb_queue_tail(&rx->sdata->skb_queue, skb); 745 skb_queue_tail(&rx->sdata->skb_queue, skb);
745 ieee80211_queue_work(&local->hw, &rx->sdata->work); 746 ieee80211_queue_work(&local->hw, &rx->sdata->work);
746 return; 747 return;
@@ -1969,6 +1970,7 @@ ieee80211_rx_h_action(struct ieee80211_rx_data *rx)
1969 goto invalid; 1970 goto invalid;
1970 } 1971 }
1971 1972
1973 rx->skb->pkt_type = IEEE80211_SDATA_QUEUE_TYPE_FRAME;
1972 skb_queue_tail(&sdata->skb_queue, rx->skb); 1974 skb_queue_tail(&sdata->skb_queue, rx->skb);
1973 ieee80211_queue_work(&local->hw, &sdata->work); 1975 ieee80211_queue_work(&local->hw, &sdata->work);
1974 return RX_QUEUED; 1976 return RX_QUEUED;
@@ -2001,6 +2003,7 @@ ieee80211_rx_h_action(struct ieee80211_rx_data *rx)
2001 if (memcmp(mgmt->bssid, sdata->u.mgd.bssid, ETH_ALEN)) 2003 if (memcmp(mgmt->bssid, sdata->u.mgd.bssid, ETH_ALEN))
2002 break; 2004 break;
2003 2005
2006 rx->skb->pkt_type = IEEE80211_SDATA_QUEUE_TYPE_FRAME;
2004 skb_queue_tail(&sdata->skb_queue, rx->skb); 2007 skb_queue_tail(&sdata->skb_queue, rx->skb);
2005 ieee80211_queue_work(&local->hw, &sdata->work); 2008 ieee80211_queue_work(&local->hw, &sdata->work);
2006 return RX_QUEUED; 2009 return RX_QUEUED;
@@ -2023,6 +2026,7 @@ ieee80211_rx_h_action(struct ieee80211_rx_data *rx)
2023 case WLAN_CATEGORY_MESH_PATH_SEL: 2026 case WLAN_CATEGORY_MESH_PATH_SEL:
2024 if (!ieee80211_vif_is_mesh(&sdata->vif)) 2027 if (!ieee80211_vif_is_mesh(&sdata->vif))
2025 break; 2028 break;
2029 rx->skb->pkt_type = IEEE80211_SDATA_QUEUE_TYPE_FRAME;
2026 skb_queue_tail(&sdata->skb_queue, rx->skb); 2030 skb_queue_tail(&sdata->skb_queue, rx->skb);
2027 ieee80211_queue_work(&local->hw, &sdata->work); 2031 ieee80211_queue_work(&local->hw, &sdata->work);
2028 return RX_QUEUED; 2032 return RX_QUEUED;
@@ -2128,6 +2132,7 @@ ieee80211_rx_h_mgmt(struct ieee80211_rx_data *rx)
2128 } 2132 }
2129 2133
2130 /* queue up frame and kick off work to process it */ 2134 /* queue up frame and kick off work to process it */
2135 rx->skb->pkt_type = IEEE80211_SDATA_QUEUE_TYPE_FRAME;
2131 skb_queue_tail(&sdata->skb_queue, rx->skb); 2136 skb_queue_tail(&sdata->skb_queue, rx->skb);
2132 ieee80211_queue_work(&rx->local->hw, &sdata->work); 2137 ieee80211_queue_work(&rx->local->hw, &sdata->work);
2133 2138