svn commit: r188557 - head/sys/dev/ath

Sam Leffler sam at FreeBSD.org
Thu Feb 12 21:38:04 PST 2009


Author: sam
Date: Fri Feb 13 05:38:03 2009
New Revision: 188557
URL: http://svn.freebsd.org/changeset/base/188557

Log:
  add SIOCZATHSTATS ioctl to zero driver statistics

Modified:
  head/sys/dev/ath/if_ath.c
  head/sys/dev/ath/if_athioctl.h

Modified: head/sys/dev/ath/if_ath.c
==============================================================================
--- head/sys/dev/ath/if_ath.c	Fri Feb 13 05:31:18 2009	(r188556)
+++ head/sys/dev/ath/if_ath.c	Fri Feb 13 05:38:03 2009	(r188557)
@@ -56,6 +56,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/endian.h>
 #include <sys/kthread.h>
 #include <sys/taskqueue.h>
+#include <sys/priv.h>
 
 #include <machine/bus.h>
  
@@ -6583,6 +6584,11 @@ ath_ioctl(struct ifnet *ifp, u_long cmd,
 		    rt->info[sc->sc_txrix].dot11Rate &~ IEEE80211_RATE_BASIC;
 		return copyout(&sc->sc_stats,
 		    ifr->ifr_data, sizeof (sc->sc_stats));
+	case SIOCZATHSTATS:
+		error = priv_check(curthread, PRIV_DRIVER);
+		if (error == 0)
+			memset(&sc->sc_stats, 0, sizeof(sc->sc_stats));
+		break;
 #ifdef ATH_DIAGAPI
 	case SIOCGATHDIAG:
 		error = ath_ioctl_diag(sc, (struct ath_diag *) ifr);

Modified: head/sys/dev/ath/if_athioctl.h
==============================================================================
--- head/sys/dev/ath/if_athioctl.h	Fri Feb 13 05:31:18 2009	(r188556)
+++ head/sys/dev/ath/if_athioctl.h	Fri Feb 13 05:38:03 2009	(r188557)
@@ -122,6 +122,7 @@ struct ath_stats {
 };
 
 #define	SIOCGATHSTATS	_IOWR('i', 137, struct ifreq)
+#define	SIOCZATHSTATS	_IOWR('i', 139, struct ifreq)
 
 struct ath_diag {
 	char	ad_name[IFNAMSIZ];	/* if name, e.g. "ath0" */


More information about the svn-src-all mailing list