svn commit: r257754 - head/sys/net80211

Adrian Chadd adrian at FreeBSD.org
Wed Nov 6 17:20:49 UTC 2013


Author: adrian
Date: Wed Nov  6 17:20:49 2013
New Revision: 257754
URL: http://svnweb.freebsd.org/changeset/base/257754

Log:
  Don't return ENOBUFS if the transmit path handles the frame but queues it (eg in power save.)
  
  This is definitely an MFC candidate for 10.0-REL.
  
  MFC after:	1 week

Modified:
  head/sys/net80211/ieee80211_output.c

Modified: head/sys/net80211/ieee80211_output.c
==============================================================================
--- head/sys/net80211/ieee80211_output.c	Wed Nov  6 16:53:10 2013	(r257753)
+++ head/sys/net80211/ieee80211_output.c	Wed Nov  6 17:20:49 2013	(r257754)
@@ -144,8 +144,12 @@ ieee80211_vap_pkt_send_dest(struct ieee8
 		 */
 		(void) ieee80211_pwrsave(ni, m);
 		ieee80211_free_node(ni);
-		/* XXX better status? */
-		return (ENOBUFS);
+
+		/*
+		 * We queued it fine, so tell the upper layer
+		 * that we consumed it.
+		 */
+		return (0);
 	}
 	/* calculate priority so drivers can find the tx queue */
 	if (ieee80211_classify(ni, m)) {
@@ -156,8 +160,9 @@ ieee80211_vap_pkt_send_dest(struct ieee8
 		ifp->if_oerrors++;
 		m_freem(m);
 		ieee80211_free_node(ni);
+
 		/* XXX better status? */
-		return (ENOBUFS);
+		return (0);
 	}
 	/*
 	 * Stash the node pointer.  Note that we do this after
@@ -169,7 +174,6 @@ ieee80211_vap_pkt_send_dest(struct ieee8
 
 	BPF_MTAP(ifp, m);		/* 802.3 tx */
 
-
 	/*
 	 * Check if A-MPDU tx aggregation is setup or if we
 	 * should try to enable it.  The sta must be associated


More information about the svn-src-all mailing list