summaryrefslogtreecommitdiffstats
path: root/sys/dev/rt
diff options
context:
space:
mode:
authorhselasky <hselasky@FreeBSD.org>2014-10-21 07:31:21 +0000
committerhselasky <hselasky@FreeBSD.org>2014-10-21 07:31:21 +0000
commit49c137f7be5791eee8102395257cdf48b40c81f7 (patch)
treeee67959a46304c59df434799575e3820a2cc841f /sys/dev/rt
parentfef9d98869a5c15698b0511d8ff1044b517f1e8f (diff)
downloadFreeBSD-src-49c137f7be5791eee8102395257cdf48b40c81f7.zip
FreeBSD-src-49c137f7be5791eee8102395257cdf48b40c81f7.tar.gz
Fix multiple incorrect SYSCTL arguments in the kernel:
- Wrong integer type was specified. - Wrong or missing "access" specifier. The "access" specifier sometimes included the SYSCTL type, which it should not, except for procedural SYSCTL nodes. - Logical OR where binary OR was expected. - Properly assert the "access" argument passed to all SYSCTL macros, using the CTASSERT macro. This applies to both static- and dynamically created SYSCTLs. - Properly assert the the data type for both static and dynamic SYSCTLs. In the case of static SYSCTLs we only assert that the data pointed to by the SYSCTL data pointer has the correct size, hence there is no easy way to assert types in the C language outside a C-function. - Rewrote some code which doesn't pass a constant "access" specifier when creating dynamic SYSCTL nodes, which is now a requirement. - Updated "EXAMPLES" section in SYSCTL manual page. MFC after: 3 days Sponsored by: Mellanox Technologies
Diffstat (limited to 'sys/dev/rt')
-rw-r--r--sys/dev/rt/if_rt.c135
1 files changed, 69 insertions, 66 deletions
diff --git a/sys/dev/rt/if_rt.c b/sys/dev/rt/if_rt.c
index f89f6dc..b10b581 100644
--- a/sys/dev/rt/if_rt.c
+++ b/sys/dev/rt/if_rt.c
@@ -2339,45 +2339,45 @@ rt_sysctl_attach(struct rt_softc *sc)
stats = SYSCTL_ADD_NODE(ctx, SYSCTL_CHILDREN(tree), OID_AUTO,
"stats", CTLFLAG_RD, 0, "statistic");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "interrupts", CTLFLAG_RD, &sc->interrupts, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "interrupts", CTLFLAG_RD, &sc->interrupts,
"all interrupts");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"tx_coherent_interrupts", CTLFLAG_RD, &sc->tx_coherent_interrupts,
- 0, "Tx coherent interrupts");
+ "Tx coherent interrupts");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"rx_coherent_interrupts", CTLFLAG_RD, &sc->rx_coherent_interrupts,
- 0, "Rx coherent interrupts");
+ "Rx coherent interrupts");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "rx_interrupts", CTLFLAG_RD, &sc->rx_interrupts, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "rx_interrupts", CTLFLAG_RD, &sc->rx_interrupts,
"Rx interrupts");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "rx_delay_interrupts", CTLFLAG_RD, &sc->rx_delay_interrupts, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "rx_delay_interrupts", CTLFLAG_RD, &sc->rx_delay_interrupts,
"Rx delay interrupts");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "TXQ3_interrupts", CTLFLAG_RD, &sc->tx_interrupts[3], 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "TXQ3_interrupts", CTLFLAG_RD, &sc->tx_interrupts[3],
"Tx AC3 interrupts");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "TXQ2_interrupts", CTLFLAG_RD, &sc->tx_interrupts[2], 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "TXQ2_interrupts", CTLFLAG_RD, &sc->tx_interrupts[2],
"Tx AC2 interrupts");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "TXQ1_interrupts", CTLFLAG_RD, &sc->tx_interrupts[1], 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "TXQ1_interrupts", CTLFLAG_RD, &sc->tx_interrupts[1],
"Tx AC1 interrupts");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "TXQ0_interrupts", CTLFLAG_RD, &sc->tx_interrupts[0], 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "TXQ0_interrupts", CTLFLAG_RD, &sc->tx_interrupts[0],
"Tx AC0 interrupts");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"tx_delay_interrupts", CTLFLAG_RD, &sc->tx_delay_interrupts,
- 0, "Tx delay interrupts");
+ "Tx delay interrupts");
SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"TXQ3_desc_queued", CTLFLAG_RD, &sc->tx_ring[3].desc_queued,
@@ -2411,93 +2411,96 @@ rt_sysctl_attach(struct rt_softc *sc)
"TXQ0_data_queued", CTLFLAG_RD, &sc->tx_ring[0].data_queued,
0, "Tx AC0 data queued");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"TXQ3_data_queue_full", CTLFLAG_RD, &sc->tx_data_queue_full[3],
- 0, "Tx AC3 data queue full");
+ "Tx AC3 data queue full");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"TXQ2_data_queue_full", CTLFLAG_RD, &sc->tx_data_queue_full[2],
- 0, "Tx AC2 data queue full");
+ "Tx AC2 data queue full");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"TXQ1_data_queue_full", CTLFLAG_RD, &sc->tx_data_queue_full[1],
- 0, "Tx AC1 data queue full");
+ "Tx AC1 data queue full");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"TXQ0_data_queue_full", CTLFLAG_RD, &sc->tx_data_queue_full[0],
- 0, "Tx AC0 data queue full");
+ "Tx AC0 data queue full");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"tx_watchdog_timeouts", CTLFLAG_RD, &sc->tx_watchdog_timeouts,
- 0, "Tx watchdog timeouts");
+ "Tx watchdog timeouts");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "tx_defrag_packets", CTLFLAG_RD, &sc->tx_defrag_packets, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "tx_defrag_packets", CTLFLAG_RD, &sc->tx_defrag_packets,
"Tx defragmented packets");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "no_tx_desc_avail", CTLFLAG_RD, &sc->no_tx_desc_avail, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "no_tx_desc_avail", CTLFLAG_RD, &sc->no_tx_desc_avail,
"no Tx descriptors available");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"rx_mbuf_alloc_errors", CTLFLAG_RD, &sc->rx_mbuf_alloc_errors,
- 0, "Rx mbuf allocation errors");
+ "Rx mbuf allocation errors");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"rx_mbuf_dmamap_errors", CTLFLAG_RD, &sc->rx_mbuf_dmamap_errors,
- 0, "Rx mbuf DMA mapping errors");
+ "Rx mbuf DMA mapping errors");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"tx_queue_0_not_empty", CTLFLAG_RD, &sc->tx_queue_not_empty[0],
- 0, "Tx queue 0 not empty");
+ "Tx queue 0 not empty");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
"tx_queue_1_not_empty", CTLFLAG_RD, &sc->tx_queue_not_empty[1],
- 0, "Tx queue 1 not empty");
+ "Tx queue 1 not empty");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "rx_packets", CTLFLAG_RD, &sc->rx_packets, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "rx_packets", CTLFLAG_RD, &sc->rx_packets,
"Rx packets");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "rx_crc_errors", CTLFLAG_RD, &sc->rx_crc_err, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "rx_crc_errors", CTLFLAG_RD, &sc->rx_crc_err,
"Rx CRC errors");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "rx_phy_errors", CTLFLAG_RD, &sc->rx_phy_err, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "rx_phy_errors", CTLFLAG_RD, &sc->rx_phy_err,
"Rx PHY errors");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "rx_dup_packets", CTLFLAG_RD, &sc->rx_dup_packets, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "rx_dup_packets", CTLFLAG_RD, &sc->rx_dup_packets,
"Rx duplicate packets");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "rx_fifo_overflows", CTLFLAG_RD, &sc->rx_fifo_overflows, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "rx_fifo_overflows", CTLFLAG_RD, &sc->rx_fifo_overflows,
"Rx FIFO overflows");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "rx_bytes", CTLFLAG_RD, &sc->rx_bytes, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "rx_bytes", CTLFLAG_RD, &sc->rx_bytes,
"Rx bytes");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "rx_long_err", CTLFLAG_RD, &sc->rx_long_err, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "rx_long_err", CTLFLAG_RD, &sc->rx_long_err,
"Rx too long frame errors");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "rx_short_err", CTLFLAG_RD, &sc->rx_short_err, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "rx_short_err", CTLFLAG_RD, &sc->rx_short_err,
"Rx too short frame errors");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "tx_bytes", CTLFLAG_RD, &sc->tx_bytes, 0,
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "tx_bytes", CTLFLAG_RD, &sc->tx_bytes,
"Tx bytes");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "tx_packets", CTLFLAG_RD, &sc->tx_packets, 0,
+
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "tx_packets", CTLFLAG_RD, &sc->tx_packets,
"Tx packets");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "tx_skip", CTLFLAG_RD, &sc->tx_skip, 0,
+
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "tx_skip", CTLFLAG_RD, &sc->tx_skip,
"Tx skip count for GDMA ports");
- SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
- "tx_collision", CTLFLAG_RD, &sc->tx_collision, 0,
+
+ SYSCTL_ADD_ULONG(ctx, SYSCTL_CHILDREN(stats), OID_AUTO,
+ "tx_collision", CTLFLAG_RD, &sc->tx_collision,
"Tx collision count for GDMA ports");
}
OpenPOWER on IntegriCloud