Jelajahi Sumber

mac80211: don't attempt to reorder multicast frames

Multicast frames can't be transmitted as part of an aggregation
session (such a session couldn't even be set up) so don't try to
reorder them. Trying to do so would cause the reorder to stop
working correctly since multicast QoS frames (as transmitted by
the Aruba APs this was found with) would cause sequence number
confusion in the buffer.

Cc: stable@vger.kernel.org
Reported-by: Blaise Gassend <blaise@suitabletech.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Johannes Berg 11 tahun lalu
induk
melakukan
051a41fa4e
1 mengubah file dengan 2 tambahan dan 1 penghapusan
  1. 2 1
      net/mac80211/rx.c

+ 2 - 1
net/mac80211/rx.c

@@ -911,7 +911,8 @@ static void ieee80211_rx_reorder_ampdu(struct ieee80211_rx_data *rx,
 	u16 sc;
 	u16 sc;
 	u8 tid, ack_policy;
 	u8 tid, ack_policy;
 
 
-	if (!ieee80211_is_data_qos(hdr->frame_control))
+	if (!ieee80211_is_data_qos(hdr->frame_control) ||
+	    is_multicast_ether_addr(hdr->addr1))
 		goto dont_reorder;
 		goto dont_reorder;
 
 
 	/*
 	/*