IFLIB sysctl - 0xffffffRabbit/NextBsd GitHub Wiki

IFLIB sysctl functions provide an interface for examining and dynamically changing iflib specific parameters. It is invoked from the command line using sysctl net.iflib and returns the following parameters:

verbose_debug - If enabled prints debugging information regarding number of packets processed, descriptors cleaned and reclaimed, and transfer segments.

rxd_flush - Number of times rxd_flush has been called.

rx_mbuf_null - Incremented each time the iflib_rxeof function receives a null mbuf.

rx_if_input - Number of times iflib_rxeof called if_input.

rx_zero_len - Number of times iflib_rxeof received mbufs of length zero.

rx_ctx_inactive - Number of times iflib_rxeof called with inactive context, i.e. IFF_DRV_RUNNING flag set to zero.

rx_unavail - Number of times iflib_rxeof called iflib_rxd_avail and returned with no available data.

fast_intrs - Number of times fast interrupts were called.

rx_intr_enables - Counter incremented each time queue interrupts are enabled after iflib_rxeof returns with zero packets remaining to process.

task_fn_rx - Number of times receive interrupts are called.

intr_msix - Number of times msix interrupt is called.

intr_link - Number of times the link interrupt is called.

encap_txd_encap_fail - Number of times isc_txd_encap function returns with a failure error.

encap_txq_avail_fail - Counter is incremented each time the number of segments is greater than the number of transmit queues available during the function call iflib_encap.

encap_txd_encap_fail - Number of times that isc_txd_encap returns a failure error.

encap_load_mbuf_fail - Number of times iflib_busdma_load_mbuf_sg returns an error.

txq_drain_encapfail - Number of times that ifib_encap returns an error value of ENOBUFS.

txq_drain_notready- Counter incremented during iflib_txq_drain each time that the drain is not ready. Either !IFF_DRV_RUNNING or !LINK_ACTIVE.

txq_drain_oactive - Number of drain oactives. Called in the iflib_txq_drain function.

txq_drain_flushing - Incremented each time IFC_QFLUSH flag is set when the iflib_txq_drain function is called.

fl_refills - Incremented whenever the iflib_fl_refill function is called.

fl_refills_large - Incremented whenever the iflib_fl_refill function is called and the count is greater than 8.

rx_allocs - Number of receive mbufs allocated.

tx_frees - Number of times m_free is called to free mbufs due to transmission errors.

tx_encap - Number of packets encapsulated successfully by isc_txd_encap for transmission.

tx_sent - Number of packets successfully transmitted.

tx_seen - Number of packets that should be transmitted.

min_tx_latency - Default is to defer updates to the doorbell register on transmit. This minimizes transmit latency at the possible expense of throughput.