From owner-svn-src-stable@FreeBSD.ORG  Sun Jul 25 17:40:49 2010
Return-Path: <owner-svn-src-stable@FreeBSD.ORG>
Delivered-To: svn-src-stable@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id 53E801065673;
	Sun, 25 Jul 2010 17:40:49 +0000 (UTC)
	(envelope-from rpaulo@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
	by mx1.freebsd.org (Postfix) with ESMTP id 6CBB38FC22;
	Sun, 25 Jul 2010 17:40:49 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
	by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o6PHenVo014405;
	Sun, 25 Jul 2010 17:40:49 GMT (envelope-from rpaulo@svn.freebsd.org)
Received: (from rpaulo@localhost)
	by svn.freebsd.org (8.14.3/8.14.3/Submit) id o6PHengU014403;
	Sun, 25 Jul 2010 17:40:49 GMT (envelope-from rpaulo@svn.freebsd.org)
Message-Id: <201007251740.o6PHengU014403@svn.freebsd.org>
From: Rui Paulo <rpaulo@FreeBSD.org>
Date: Sun, 25 Jul 2010 17:40:49 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
	svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org
X-SVN-Group: stable-8
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc: 
Subject: svn commit: r210474 - stable/8/sys/net80211
X-BeenThere: svn-src-stable@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: SVN commit messages for all the -stable branches of the src tree
	<svn-src-stable.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-stable>, 
	<mailto:svn-src-stable-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-stable>
List-Post: <mailto:svn-src-stable@freebsd.org>
List-Help: <mailto:svn-src-stable-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-stable>,
	<mailto:svn-src-stable-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 25 Jul 2010 17:40:49 -0000

Author: rpaulo
Date: Sun Jul 25 17:40:48 2010
New Revision: 210474
URL: http://svn.freebsd.org/changeset/base/210474

Log:
  MFC r209016, r209022:
   Some odd APs send beacons on the same TX queue as non-beacons. This breaks
   802.11 duplicate detection. Upon looking at the standard, we discover
   that 802.11-2007 says:
   "A receiving QoS STA is also required to keep only the most recent
   cache entry per<Address 2, TID, sequence-number>  triple, storing only
   the most recently received fragment number for that triple. A receiving
   STA may omit tuples obtained from broadcast/multicast or ATIM frames
   from the cache."
  
   To fix this, we just disable duplicate detection for multicast/broadcast
   frames.
  
  Reviewed by:	sam
  Obtained from:	DragonFly

Modified:
  stable/8/sys/net80211/ieee80211_sta.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)

Modified: stable/8/sys/net80211/ieee80211_sta.c
==============================================================================
--- stable/8/sys/net80211/ieee80211_sta.c	Sun Jul 25 17:11:57 2010	(r210473)
+++ stable/8/sys/net80211/ieee80211_sta.c	Sun Jul 25 17:40:48 2010	(r210474)
@@ -585,7 +585,7 @@ sta_input(struct ieee80211_node *ni, str
 		}
 		IEEE80211_RSSI_LPF(ni->ni_avgrssi, rssi);
 		ni->ni_noise = nf;
-		if (HAS_SEQ(type)) {
+		if (HAS_SEQ(type) && !IEEE80211_IS_MULTICAST(wh->i_addr1)) {
 			uint8_t tid = ieee80211_gettid(wh);
 			if (IEEE80211_QOS_HAS_SEQ(wh) &&
 			    TID_TO_WME_AC(tid) >= WME_AC_VI)