PERFORCE change 137126 for review

Sam Leffler sam at FreeBSD.org
Fri Mar 7 23:01:20 UTC 2008


http://perforce.freebsd.org/chv.cgi?CH=137126

Change 137126 by sam at sam_ebb on 2008/03/07 23:00:58

	overhaul debug support: use the net80211 debug flag to control
	msgs instead of the ath debug flags

Affected files ...

.. //depot/projects/vap/sys/dev/ath/ath_rate/sample/sample.c#9 edit
.. //depot/projects/vap/sys/modules/ath_rate_sample/Makefile#5 edit

Differences ...

==== //depot/projects/vap/sys/dev/ath/ath_rate/sample/sample.c#9 (text+ko) ====

@@ -42,6 +42,7 @@
  * John Bicket's SampleRate control algorithm.
  */
 #include "opt_inet.h"
+#include "opt_wlan.h"
 
 #include <sys/param.h>
 #include <sys/systm.h> 
@@ -61,7 +62,6 @@
 #include <net/if.h>
 #include <net/if_media.h>
 #include <net/if_arp.h>
-#include <net/ethernet.h>		/* XXX for ether_sprintf */
 
 #include <net80211/ieee80211_var.h>
 
@@ -76,23 +76,6 @@
 #include <dev/ath/ath_rate/sample/sample.h>
 #include <contrib/dev/ath/ah_desc.h>
 
-#define	SAMPLE_DEBUG
-#ifdef SAMPLE_DEBUG
-enum {
-	ATH_DEBUG_NODE		= 0x00080000,	/* node management */
-	ATH_DEBUG_RATE		= 0x00000010,	/* rate control */
-	ATH_DEBUG_ANY		= 0xffffffff
-};
-#define	DPRINTF(sc, m, fmt, ...) do {				\
-	if (sc->sc_debug & (m))					\
-		printf(fmt, __VA_ARGS__);			\
-} while (0)
-#else
-#define	DPRINTF(sc, m, fmt, ...) do {				\
-	(void) sc;						\
-} while (0)
-#endif
-
 /*
  * This file is an implementation of the SampleRate algorithm
  * in "Bit-rate Selection in Wireless Networks"
@@ -152,14 +135,12 @@
 void
 ath_rate_node_init(struct ath_softc *sc, struct ath_node *an)
 {
-	DPRINTF(sc, ATH_DEBUG_NODE, "%s:\n", __func__);
 	/* NB: assumed to be zero'd by caller */
 }
 
 void
 ath_rate_node_cleanup(struct ath_softc *sc, struct ath_node *an)
 {
-	DPRINTF(sc, ATH_DEBUG_NODE, "%s:\n", __func__);
 }
 
 
@@ -323,10 +304,11 @@
 			
 			if (change_rates) {
 				if (best_ndx != sn->current_rate[size_bin]) {
-					DPRINTF(sc, ATH_DEBUG_RATE,
-"%s: %s size %d switch rate %d (%d/%d) -> %d (%d/%d) after %d packets mrr %d\n",
+					IEEE80211_NOTE(an->an_node.ni_vap,
+					    IEEE80211_MSG_RATECTL,
+					    &an->an_node,
+"%s: size %d switch rate %d (%d/%d) -> %d (%d/%d) after %d packets mrr %d",
 					    __func__,
-					    ether_sprintf(an->an_node.ni_macaddr),
 					    packet_size_bins[size_bin],
 					    sn->rates[sn->current_rate[size_bin]].rate,
 					    sn->stats[size_bin][sn->current_rate[size_bin]].average_tx_time,
@@ -491,9 +473,10 @@
 
 
 	if (ndx0 == sn->current_sample_ndx[size_bin]) {
-		DPRINTF(sc, ATH_DEBUG_RATE,
-"%s: %s size %d %s sample rate %d tries (%d/%d) tt %d avg_tt (%d/%d)\n", 
-		    __func__, ether_sprintf(an->an_node.ni_macaddr), 
+		IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
+		   &an->an_node,
+"%s: size %d %s sample rate %d tries (%d/%d) tt %d avg_tt (%d/%d)", 
+		    __func__, 
 		    size,
 		    status ? "FAIL" : "OK",
 		    rate, short_tries, tries, tt, 
@@ -523,9 +506,10 @@
 		frame_size = 1500;
 
 	if (sn->num_rates <= 0) {
-		DPRINTF(sc, ATH_DEBUG_RATE,
-		    "%s: %s size %d %s rate/try %d/%d no rates yet\n", 
-		    __func__, ether_sprintf(an->an_node.ni_macaddr),
+		IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
+		    &an->an_node,
+		    "%s: size %d %s rate/try %d/%d no rates yet", 
+		    __func__,
 		    bin_to_size(size_to_bin(frame_size)),
 		    ts->ts_status ? "FAIL" : "OK",
 		    short_tries, long_tries);
@@ -538,9 +522,9 @@
 		/*
 		 * Only one rate was used; optimize work.
 		 */
-		DPRINTF(sc, ATH_DEBUG_RATE,
-		    "%s: %s size %d %s rate/try %d/%d/%d\n", 
-		     __func__, ether_sprintf(an->an_node.ni_macaddr),
+		IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
+		     &an->an_node, "%s: size %d %s rate/try %d/%d/%d",
+		     __func__,
 		     bin_to_size(size_to_bin(frame_size)),
 		     ts->ts_status ? "FAIL" : "OK",
 		     final_rate, short_tries, long_tries);
@@ -588,9 +572,10 @@
 		tries3 = MS(ds0->ds_ctl2, AR_XmitDataTries3);
 		ndx3 = rate_to_ndx(sn, rate3);
 
-		DPRINTF(sc, ATH_DEBUG_RATE,
-"%s: %s size %d finaltsidx %d tries %d %s rate/try [%d/%d %d/%d %d/%d %d/%d]\n", 
-		     __func__, ether_sprintf(an->an_node.ni_macaddr),
+		IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
+		    &an->an_node,
+"%s: size %d finaltsidx %d tries %d %s rate/try [%d/%d %d/%d %d/%d %d/%d]", 
+		     __func__,
 		     bin_to_size(size_to_bin(frame_size)),
 		     finalTSIdx,
 		     long_tries, 
@@ -655,8 +640,6 @@
 void
 ath_rate_newassoc(struct ath_softc *sc, struct ath_node *an, int isnew)
 {
-	DPRINTF(sc, ATH_DEBUG_NODE, "%s: %s isnew %d\n", __func__,
-	     ether_sprintf(an->an_node.ni_macaddr), isnew);
 	if (isnew)
 		ath_rate_ctl_reset(sc, &an->an_node);
 }
@@ -697,30 +680,34 @@
 			sn->static_rate_ndx = srate;
 	}
 
-        DPRINTF(sc, ATH_DEBUG_RATE, "%s: %s size 1600 rate/tt",
-	    __func__, ether_sprintf(ni->ni_macaddr));
-
 	sn->num_rates = ni->ni_rates.rs_nrates;
         for (x = 0; x < ni->ni_rates.rs_nrates; x++) {
 		sn->rates[x].rate = ni->ni_rates.rs_rates[x] & IEEE80211_RATE_VAL;
 		sn->rates[x].rix = sc->sc_rixmap[sn->rates[x].rate];
 		if (sn->rates[x].rix == 0xff) {
-			DPRINTF(sc, ATH_DEBUG_RATE,
-			    "%s: ignore bogus rix at %d\n", __func__, x);
+			IEEE80211_NOTE(ni->ni_vap, IEEE80211_MSG_RATECTL, ni,
+			    "%s: ignore bogus rix at %d", __func__, x);
 			continue;
 		}
 		sn->rates[x].rateCode = rt->info[sn->rates[x].rix].rateCode;
 		sn->rates[x].shortPreambleRateCode = 
 			rt->info[sn->rates[x].rix].rateCode | 
 			rt->info[sn->rates[x].rix].shortPreamble;
-
-		DPRINTF(sc, ATH_DEBUG_RATE, " %d/%d", sn->rates[x].rate,
-		    calc_usecs_unicast_packet(sc, 1600, sn->rates[x].rix, 0,0));
+	}
+#ifdef IEEE80211_DEBUG
+	if (ieee80211_msg(ni->ni_vap, IEEE80211_MSG_RATECTL)) {
+		ieee80211_note(ni->ni_vap, "[%6D] %s: size 1600 rate/tt",
+		    __func__, ni->ni_macaddr, ":");
+		for (x = 0; x < sn->num_rates; x++) {
+			if (sn->rates[x].rix == 0xff)
+				continue;
+			printf(" %d/%d", sn->rates[x].rate,
+			    calc_usecs_unicast_packet(sc, 1600,
+				sn->rates[x].rix, 0,0));
+		}
+		printf("\n");
 	}
-	DPRINTF(sc, ATH_DEBUG_RATE, "%s\n", "");
-	
-	sn->num_rates = ni->ni_rates.rs_nrates;
-	
+#endif
 	for (y = 0; y < NUM_PACKET_SIZE_BINS; y++) {
 		int size = bin_to_size(y);
 		int ndx = 0;
@@ -751,9 +738,8 @@
 		sn->current_rate[y] = ndx;
 	}
 
-	DPRINTF(sc, ATH_DEBUG_RATE,
-	    "%s: %s %d rates %d%sMbps (%dus)- %d%sMbps (%dus)\n",
-	    __func__, ether_sprintf(ni->ni_macaddr), 
+	IEEE80211_NOTE(ni->ni_vap, IEEE80211_MSG_RATECTL, ni,
+	    "%s: %d rates %d%sMbps (%dus)- %d%sMbps (%dus)", __func__, 
 	    sn->num_rates,
 	    sn->rates[0].rate/2, sn->rates[0].rate % 0x1 ? ".5" : "",
 	    sn->stats[1][0].perfect_tx_time,
@@ -819,7 +805,6 @@
 {
 	struct sample_softc *osc;
 	
-	DPRINTF(sc, ATH_DEBUG_ANY, "%s:\n", __func__);
 	osc = malloc(sizeof(struct sample_softc), M_DEVBUF, M_NOWAIT|M_ZERO);
 	if (osc == NULL)
 		return NULL;

==== //depot/projects/vap/sys/modules/ath_rate_sample/Makefile#5 (text+ko) ====

@@ -40,7 +40,7 @@
 
 KMOD=	ath_rate
 SRCS=	sample.c
-SRCS+=	device_if.h bus_if.h pci_if.h opt_inet.h opt_ah.h
+SRCS+=	device_if.h bus_if.h pci_if.h opt_inet.h opt_ah.h opt_wlan.h
 
 HAL=	${.CURDIR}/../../contrib/dev/ath
 CFLAGS+=  -I. -I${.CURDIR}/../../dev/ath -I${HAL}
@@ -56,7 +56,13 @@
 ATH_MODULE_ARCH=${MACHINE_ARCH}
 .endif
 
+.if !defined(KERNBUILDDIR)
 opt_ah.h: ${HAL}/public/${ATH_MODULE_ARCH}-elf.opt_ah.h
 	cp ${HAL}/public/${ATH_MODULE_ARCH}-elf.opt_ah.h ${.TARGET}
 
+opt_wlan.h:
+#	echo "#define IEEE80211_DEBUG 1" > opt_wlan.h
+	echo > opt_wlan.h
+.endif
+
 .include <bsd.kmod.mk>


More information about the p4-projects mailing list