svn commit: r226529 - user/adrian/if_ath_tx/sys/dev/ath

Adrian Chadd adrian at FreeBSD.org
Wed Oct 19 08:52:15 UTC 2011


Author: adrian
Date: Wed Oct 19 08:52:14 2011
New Revision: 226529
URL: http://svn.freebsd.org/changeset/base/226529

Log:
  Remove unneeded code and comment. The race has been fixed
  by placing the relevant bits behind ATH_LOCK.

Modified:
  user/adrian/if_ath_tx/sys/dev/ath/if_ath.c

Modified: user/adrian/if_ath_tx/sys/dev/ath/if_ath.c
==============================================================================
--- user/adrian/if_ath_tx/sys/dev/ath/if_ath.c	Wed Oct 19 08:39:44 2011	(r226528)
+++ user/adrian/if_ath_tx/sys/dev/ath/if_ath.c	Wed Oct 19 08:52:14 2011	(r226529)
@@ -4130,38 +4130,11 @@ rx_next:
 	 * need to be handled, kick the PCU if there's
 	 * been an RXEOL condition.
 	 */
-	/*
-	 * XXX TODO!
-	 * It is very likely that we're unfortunately
-	 * racing with other places where ath_hal_intrset()
-	 * may be called. It may be that we do need to
-	 * add some more locking (eg the pcu lock from ath9k/
-	 * reference), or introduce some other way to cope
-	 * with this.
-	 */
 	if (resched && sc->sc_kickpcu) {
 		CTR0(ATH_KTR_ERR, "ath_rx_proc: kickpcu");
 		device_printf(sc->sc_dev, "%s: kickpcu; handled %d packets\n",
 		    __func__, npkts);
 
-#if 0
-		/*
-		 * This re-links all of the descriptors together.
-		 * (Is it possible that somehow, some state/issue
-		 * is leaving us with badly linked descriptors?)
-		 * Is it possible that we're receiving another RXEOL
-		 * _during_ this function?
-		 */
-		if (ath_startrecv(sc) != 0) {
-			if_printf(ifp,
-			    "%s: couldn't restart RX after RXEOL; resetting\n",
-			    __func__);
-			ath_reset(ifp);
-			sc->sc_kickpcu = 0;
-			return;
-		}
-#endif
-
 		/* XXX rxslink? */
 		bf = TAILQ_FIRST(&sc->sc_rxbuf);
 		ath_hal_putrxbuf(ah, bf->bf_daddr);


More information about the svn-src-user mailing list