PERFORCE change 166660 for review
Gabor Pali
pgj at FreeBSD.org
Mon Jul 27 22:04:52 UTC 2009
http://perforce.freebsd.org/chv.cgi?CH=166660
Change 166660 by pgj at petymeg-current on 2009/07/27 22:04:33
Standardize PIM statistics and add header.
Affected files ...
.. //depot/projects/soc2009/pgj_libstat/src/sys/netinet/ip_mroute.c#2 edit
.. //depot/projects/soc2009/pgj_libstat/src/sys/netinet/pim_var.h#2 edit
Differences ...
==== //depot/projects/soc2009/pgj_libstat/src/sys/netinet/ip_mroute.c#2 (text+ko) ====
@@ -209,13 +209,21 @@
static struct callout bw_upcalls_ch;
#define BW_UPCALLS_PERIOD (hz) /* periodical flush of bw upcalls */
+static struct stat_header pimstat_header = {
+ .sth_version = PIMSTAT_VERSION,
+ .sth_len = sizeof(struct pimstat)
+};
static struct pimstat pimstat;
SYSCTL_NODE(_net_inet, IPPROTO_PIM, pim, CTLFLAG_RW, 0, "PIM");
-SYSCTL_STRUCT(_net_inet_pim, PIMCTL_STATS, stats, CTLFLAG_RD,
+SYSCTL_STRUCT(_net_inet_pim, PIMCTL_STATS, stats, CTLFLAG_RW,
&pimstat, pimstat,
"PIM Statistics (struct pimstat, netinet/pim_var.h)");
+SYSCTL_STRUCT(_net_inet_pim, OID_AUTO, stats_header, CTLFLAG_RD,
+ &pimstat_header, stat_header,
+ "PIM Statistics header");
+
static u_long pim_squelch_wholepkt = 0;
SYSCTL_ULONG(_net_inet_pim, OID_AUTO, squelch_wholepkt, CTLFLAG_RW,
&pim_squelch_wholepkt, 0,
==== //depot/projects/soc2009/pgj_libstat/src/sys/netinet/pim_var.h#2 (text+ko) ====
@@ -45,18 +45,21 @@
/*
* PIM statistics kept in the kernel
*/
+
+#define PIMSTAT_VERSION 0x00000001
+
struct pimstat {
- u_quad_t pims_rcv_total_msgs; /* total PIM messages received */
- u_quad_t pims_rcv_total_bytes; /* total PIM bytes received */
- u_quad_t pims_rcv_tooshort; /* rcvd with too few bytes */
- u_quad_t pims_rcv_badsum; /* rcvd with bad checksum */
- u_quad_t pims_rcv_badversion; /* rcvd bad PIM version */
- u_quad_t pims_rcv_registers_msgs; /* rcvd regs. msgs (data only) */
- u_quad_t pims_rcv_registers_bytes; /* rcvd regs. bytes (data only) */
- u_quad_t pims_rcv_registers_wrongiif; /* rcvd regs. on wrong iif */
- u_quad_t pims_rcv_badregisters; /* rcvd invalid registers */
- u_quad_t pims_snd_registers_msgs; /* sent regs. msgs (data only) */
- u_quad_t pims_snd_registers_bytes; /* sent regs. bytes (data only) */
+ u_int64_t pims_rcv_total_msgs; /* total PIM messages received */
+ u_int64_t pims_rcv_total_bytes; /* total PIM bytes received */
+ u_int64_t pims_rcv_tooshort; /* rcvd with too few bytes */
+ u_int64_t pims_rcv_badsum; /* rcvd with bad checksum */
+ u_int64_t pims_rcv_badversion; /* rcvd bad PIM version */
+ u_int64_t pims_rcv_registers_msgs; /* rcvd regs. msgs (data only) */
+ u_int64_t pims_rcv_registers_bytes; /* rcvd regs. bytes (data only) */
+ u_int64_t pims_rcv_registers_wrongiif; /* rcvd regs. on wrong iif */
+ u_int64_t pims_rcv_badregisters; /* rcvd invalid registers */
+ u_int64_t pims_snd_registers_msgs; /* sent regs. msgs (data only) */
+ u_int64_t pims_snd_registers_bytes; /* sent regs. bytes (data only) */
};
#ifdef _KERNEL
More information about the p4-projects
mailing list