qidx_t
qidx_t i, pidx;
aq_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, qidx_t pidx)
aq_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget)
qidx_t pidx;
aq_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx)
static void aq_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx);
static void aq_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, qidx_t pidx);
static int aq_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget);
qidx_t rx_size;
qidx_t tx_size;
axgbe_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx)
static void axgbe_isc_txd_flush(void *, uint16_t, qidx_t);
static void axgbe_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t);
static int axgbe_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t);
axgbe_isc_rxd_flush(void *arg, uint16_t qsidx, uint8_t flidx, qidx_t pidx)
axgbe_isc_rxd_available(void *arg, uint16_t qsidx, qidx_t idx, qidx_t budget)
bnxt_isc_txd_flush(void *sc, uint16_t txqid, qidx_t pidx)
qidx_t *frag_idxs;
qidx_t pidx)
bnxt_isc_rxd_available(void *sc, uint16_t rxqid, qidx_t idx, qidx_t budget)
static void bnxt_isc_txd_flush(void *sc, uint16_t txqid, qidx_t pidx);
qidx_t pidx);
static int bnxt_isc_rxd_available(void *sc, uint16_t rxqid, qidx_t idx,
qidx_t budget);
qidx_t ntxd;
em_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx)
qidx_t processed = 0;
static void em_isc_txd_flush(void *, uint16_t, qidx_t);
qidx_t cur, prev, ntxd, rs_cidx;
static void em_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t);
static int em_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t);
static int lem_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t);
qidx_t pidx)
lem_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget)
em_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget)
qidx_t i, ntxd, qid, cur;
(qidx_t *) malloc(sizeof(qidx_t) * scctx->isc_ntxd[0],
qidx_t *tx_rsq;
qidx_t tx_rs_cidx;
qidx_t tx_rs_pidx;
qidx_t tx_cidx_processed;
qidx_t ntxd;
igb_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx)
qidx_t processed = 0;
qidx_t cur, prev, ntxd, rs_cidx;
qidx_t pidx)
igb_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget)
static void igb_isc_txd_flush(void *, uint16_t, qidx_t);
static void igb_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t);
static int igb_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t);
qidx_t cidx;
qidx_t pidx;
qidx_t pidx, queue_len;
qidx_t i = 0;
enetc_isc_txd_flush(void *data, uint16_t qid, qidx_t pidx)
enetc_isc_rxd_available(void *data, uint16_t qid, qidx_t pidx, qidx_t budget)
qidx_t hw_pidx, queue_len;
qidx_t cidx, queue_len;
qidx_t pidx, queue_len;
enetc_isc_rxd_flush(void *data, uint16_t qid, uint8_t flid, qidx_t pidx)
static void enetc_isc_txd_flush(void*, uint16_t, qidx_t);
static int enetc_isc_rxd_available(void*, uint16_t, qidx_t, qidx_t);
static void enetc_isc_rxd_flush(void*, uint16_t, uint8_t, qidx_t);
qidx_t cidx, pidx;
enic_isc_txd_flush(void *vsc, uint16_t txqid, qidx_t pidx)
enic_isc_rxd_available(void *vsc, uint16_t rxqid, qidx_t idx, qidx_t budget)
enic_isc_rxd_flush(void *vsc, uint16_t rxqid, uint8_t flid, qidx_t pidx)
static void enic_isc_txd_flush(void *, uint16_t, qidx_t);
static int enic_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t);
static void enic_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t);
qidx_t *tx_rsq;
qidx_t tx_rs_cidx;
qidx_t tx_rs_pidx;
qidx_t tx_cidx_processed;
iavf_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx)
static void iavf_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx);
qidx_t processed = 0;
qidx_t cur, prev, ntxd, rs_cidx;
qidx_t pidx);
static int iavf_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx,
qidx_t budget);
iavf_isc_rxd_flush(void * arg, uint16_t rxqid, uint8_t flid __unused, qidx_t pidx)
iavf_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget)
if (!(txr->tx_rsq = (qidx_t *)malloc(sizeof(qidx_t) * scctx->isc_ntxd[0], M_IAVF, M_NOWAIT))) {
qidx_t *tx_rsq;
qidx_t tx_rs_cidx;
qidx_t tx_rs_pidx;
qidx_t tx_cidx_processed;
qidx_t __unused pidx)
qidx_t __unused pidx, qidx_t __unused budget)
uint8_t flidx __unused, qidx_t __unused pidx)
static void ice_recovery_txd_flush(void *arg, uint16_t txqid, qidx_t pidx);
static int ice_recovery_rxd_available(void *arg, uint16_t rxqid, qidx_t pidx, qidx_t budget);
static void ice_recovery_rxd_flush(void *arg, uint16_t rxqid, uint8_t flidx, qidx_t pidx);
ice_ift_txd_flush(void *arg, uint16_t txqid, qidx_t pidx)
qidx_t processed = 0;
qidx_t cur, prev, ntxd, rs_cidx;
_ice_ift_rxd_available(struct ice_rx_queue *rxq, qidx_t pidx, qidx_t budget)
ice_ift_rxd_available(void *arg, uint16_t rxqid, qidx_t pidx, qidx_t budget)
static int _ice_ift_rxd_available(struct ice_rx_queue *rxq, qidx_t pidx, qidx_t budget);
qidx_t pidx)
static qidx_t
static void ice_ift_txd_flush(void *arg, uint16_t txqid, qidx_t pidx);
static int ice_ift_rxd_available(void *arg, uint16_t rxqid, qidx_t pidx, qidx_t budget);
ice_ift_txd_flush_subif(void *arg, uint16_t txqid, qidx_t pidx)
static void ice_ift_rxd_flush(void *arg, uint16_t rxqid, uint8_t flidx, qidx_t pidx);
ice_ift_rxd_available_subif(void *arg, uint16_t rxqid, qidx_t pidx, qidx_t budget)
static qidx_t ice_ift_queue_select(void *arg, struct mbuf *m, if_pkt_info_t pi);
static void ice_ift_txd_flush_subif(void *arg, uint16_t txqid, qidx_t pidx);
static int ice_ift_rxd_available_subif(void *arg, uint16_t rxqid, qidx_t pidx, qidx_t budget);
qidx_t pidx)
static void ice_ift_rxd_flush_subif(void *arg, uint16_t rxqid, uint8_t flidx, qidx_t pidx);
if (!(txr->tx_rsq = (qidx_t *) malloc(sizeof(qidx_t) *
qidx_t *tx_rsq;
qidx_t tx_rs_cidx;
qidx_t tx_rs_pidx;
qidx_t tx_cidx_processed;
qidx_t ntxd;
igc_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx)
qidx_t processed = 0;
qidx_t cur, prev, ntxd, rs_cidx;
qidx_t pidx)
igc_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget)
static void igc_isc_txd_flush(void *, uint16_t, qidx_t);
static void igc_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t);
static int igc_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t);
qidx_t i, ntxd, qid, cur;
txr->tx_rsq = (qidx_t *)malloc(sizeof(qidx_t) *
if (!(txr->tx_rsq = (qidx_t *)malloc(sizeof(qidx_t) *
qidx_t ntxd;
ixgbe_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx)
qidx_t processed = 0;
qidx_t cur, prev, ntxd, rs_cidx;
qidx_t pidx)
ixgbe_isc_rxd_available(void *arg, uint16_t qsidx, qidx_t pidx, qidx_t budget)
static void ixgbe_isc_txd_flush(void *, uint16_t, qidx_t);
static void ixgbe_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t);
static int ixgbe_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t);
qidx_t *tx_rsq;
qidx_t tx_rs_cidx;
qidx_t tx_rs_pidx;
qidx_t tx_cidx_processed;
if (!(txr->tx_rsq = malloc(sizeof(qidx_t) * scctx->isc_ntxd[0], M_IXL, M_NOWAIT))) {
qidx_t *tx_rsq;
qidx_t tx_rs_cidx;
qidx_t tx_rs_pidx;
qidx_t tx_cidx_processed;
ixl_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx)
qidx_t processed = 0;
qidx_t cur, prev, ntxd, rs_cidx;
static void ixl_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx);
ixl_isc_rxd_flush(void * arg, uint16_t rxqid, uint8_t flid __unused, qidx_t pidx)
ixl_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, qidx_t budget)
qidx_t pidx);
static int ixl_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx,
qidx_t budget);
mgb_isc_txd_flush(void *xsc, uint16_t txqid, qidx_t pidx)
mgb_isc_rxd_available(void *xsc, uint16_t rxqid, qidx_t idx, qidx_t budget)
qidx_t *idxs;
qidx_t idx;
mgb_isc_rxd_flush(void *xsc, uint16_t rxqid, uint8_t flid, qidx_t pidx)
uint16_t, qidx_t);
uint16_t, qidx_t, qidx_t);
uint16_t, uint8_t, qidx_t);
qidx_t pidx, nsegs;
static void vmxnet3_isc_txd_flush(void *, uint16_t, qidx_t);
static int vmxnet3_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t);
static void vmxnet3_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t);
vmxnet3_isc_txd_flush(void *vsc, uint16_t txqid, qidx_t pidx)
vmxnet3_isc_rxd_available(void *vsc, uint16_t rxqid, qidx_t idx, qidx_t budget)
vmxnet3_isc_rxd_flush(void *vsc, uint16_t rxqid, uint8_t flid, qidx_t pidx)
qidx_t *cidxp;
qidx_t txqid;
qidx_t credits;
qidx_t ifc_sysctl_ntxds[8];
qidx_t ifc_sysctl_nrxds[8];
qidx_t size;
iflib_rxeof(iflib_rxq_t rxq, qidx_t budget)
qidx_t *cidxp;
static inline qidx_t
txq_max_db_deferred(iflib_txq_t txq, qidx_t in_use)
qidx_t notify_count = TXD_NOTIFY_COUNT(txq);
qidx_t minthresh = txq->ift_size / 8;
static inline qidx_t
qidx_t notify_count = TXD_NOTIFY_COUNT(txq);
qidx_t minthresh = txq->ift_size / 8;
qidx_t dbval, max;
qidx_t ift_in_use;
qidx_t ift_cidx;
qidx_t ift_cidx_processed;
qidx_t ift_pidx;
qidx_t ift_size;
qidx_t ift_pad;
qidx_t ifl_cidx;
qidx_t ifl_pidx;
qidx_t ifl_credits;
qidx_t ifl_fragidx;
qidx_t ifl_size;
qidx_t ifl_rxd_idxs[IFLIB_MAX_RX_REFRESH];
static inline qidx_t
get_inuse(int size, qidx_t cidx, qidx_t pidx, uint8_t gen)
qidx_t used;
qidx_t ifr_cq_cidx;
iflib_rxd_avail(if_ctx_t ctx, iflib_rxq_t rxq, qidx_t cidx, qidx_t budget)
qidx_t *ndesc;
static int iflib_rxd_avail(if_ctx_t ctx, iflib_rxq_t rxq, qidx_t cidx, qidx_t budget);
qidx_t ipi_nsegs; /* number of segments */
qidx_t ipi_ndescs; /* number of descriptors used by encap */
qidx_t ipi_pidx; /* start pidx for encap */
qidx_t ipi_new_pidx; /* next available pidx post-encap */
void (*ift_txd_flush) (void *, uint16_t, qidx_t pidx);
int (*ift_rxd_available) (void *, uint16_t qsidx, qidx_t pidx, qidx_t budget);
void (*ift_rxd_flush) (void *, uint16_t qsidx, uint8_t flidx, qidx_t pidx);
qidx_t (*ift_txq_select) (void *, struct mbuf *);
qidx_t (*ift_txq_select_v2) (void *, struct mbuf *, if_pkt_info_t);
qidx_t irf_idx;
qidx_t iri_cidx; /* consumer index of cq */
qidx_t *iru_idxs;
qidx_t iru_pidx;