Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Jun 2012 01:20:05 GMT
From:      dfilter@FreeBSD.ORG (dfilter service)
To:        freebsd-wireless@FreeBSD.org
Subject:   Re: kern/169084: commit references a PR
Message-ID:  <201206150120.q5F1K5Wn052454@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/169084; it has been noted by GNATS.

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: kern/169084: commit references a PR
Date: Fri, 15 Jun 2012 01:16:13 +0000 (UTC)

 Author: adrian
 Date: Fri Jun 15 01:15:59 2012
 New Revision: 237108
 URL: http://svn.freebsd.org/changeset/base/237108
 
 Log:
   Convert ath(4) to just use ieee80211_suspend_all() and ieee80211_resume_all().
   
   The existing code tries to use the beacon miss timer to signal that the AP
   has gone away.  Unfortunately this doesn't seem to be behaving itself.
   I'll try to investigate why this is for the sake of completeness.
   
   The result is the STA will stay "associated" to the AP it was associated
   with when it suspended.  It never receives a bmiss notification so it
   never tries reassociating.
   
   PR:		kern/169084
 
 Modified:
   head/sys/dev/ath/if_ath.c
 
 Modified: head/sys/dev/ath/if_ath.c
 ==============================================================================
 --- head/sys/dev/ath/if_ath.c	Thu Jun 14 22:19:23 2012	(r237107)
 +++ head/sys/dev/ath/if_ath.c	Fri Jun 15 01:15:59 2012	(r237108)
 @@ -1310,8 +1310,13 @@ ath_suspend(struct ath_softc *sc)
  
  	sc->sc_resume_up = (ifp->if_flags & IFF_UP) != 0;
  	if (ic->ic_opmode == IEEE80211_M_STA)
 +	/*
 +	 * This has been disabled - see PR kern/169084.
 +	 */
 +#if 0
  		ath_stop(ifp);
  	else
 +#endif
  		ieee80211_suspend_all(ic);
  	/*
  	 * NB: don't worry about putting the chip in low power
 @@ -1379,6 +1384,15 @@ ath_resume(struct ath_softc *sc)
  	ath_hal_setledstate(ah, HAL_LED_INIT);
  
  	if (sc->sc_resume_up) {
 +		/*
 +		 * This particular feature doesn't work at the present,
 +		 * at least on the 802.11n chips.  It's quite possible
 +		 * that the STA Beacon timers aren't being configured
 +		 * properly.
 +		 *
 +		 * See PR kern/169084.
 +		 */
 +#if 0
  		if (ic->ic_opmode == IEEE80211_M_STA) {
  			ath_init(sc);
  			ath_hal_setledstate(ah, HAL_LED_RUN);
 @@ -1392,7 +1406,9 @@ ath_resume(struct ath_softc *sc)
  			 */
  			ath_beacon_config(sc, NULL);
  			sc->sc_syncbeacon = 1;
 +			ieee80211_resume_all(ic);
  		} else
 +#endif
  			ieee80211_resume_all(ic);
  	}
  
 _______________________________________________
 svn-src-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/svn-src-all
 To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org"
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201206150120.q5F1K5Wn052454>