rx_stats
struct ieee80211_rx_stats *rx_stats,
memset(rx_stats, 0, sizeof(*rx_stats));
rx_stats->r_flags = IEEE80211_R_NF | IEEE80211_R_RSSI;
rx_stats->c_nf = -96;
rssi = rx_stats->c_nf;
rssi -= rx_stats->c_nf;
rx_stats->c_rssi = rssi * 2;
rx_stats->r_flags |= IEEE80211_R_BAND;
rx_stats->c_band =
rx_stats->r_flags |= IEEE80211_R_FREQ | IEEE80211_R_IEEE;
rx_stats->c_freq = rx_status->freq;
rx_stats->c_ieee = ieee80211_mhz2ieee(rx_stats->c_freq, rx_stats->c_band);
rx_stats->c_rx_tsf = rx_status->mactime;
rx_stats->r_flags |= IEEE80211_R_TSF64;
rx_stats->r_flags |= IEEE80211_R_TSF_START;
rx_stats->r_flags |= IEEE80211_R_TSF_END;
rx_stats->c_chain = rx_status->chains;
rx_stats->r_flags |= IEEE80211_R_C_CHAIN;
crssi -= rx_stats->c_nf;
rx_stats->c_rssi_ctl[i] = crssi * 2;
rx_stats->c_rssi_ext[i] = crssi * 2; /* XXX _ext ??? ATH thing? */
rx_stats->c_nf_ctl[i] = rx_stats->c_nf;
rx_stats->c_nf_ext[i] = rx_stats->c_nf;
rx_stats->r_flags |= (IEEE80211_R_C_NF | IEEE80211_R_C_RSSI);
rx_stats->c_rate = legacy;
rx_stats->c_pktflags |= IEEE80211_RX_F_HT;
rx_stats->c_rate = rx_status->rate_idx; /* mcs */
rx_stats->c_pktflags |= IEEE80211_RX_F_SHORTGI;
rx_stats->c_pktflags |= IEEE80211_RX_F_VHT;
rx_stats->c_rate = rx_status->rate_idx; /* mcs */
rx_stats->c_vhtnss = rx_status->nss;
rx_stats->c_pktflags |= IEEE80211_RX_F_SHORTGI;
rx_stats->c_width = IEEE80211_RX_FW_20MHZ;
rx_stats->c_width = IEEE80211_RX_FW_40MHZ;
rx_stats->c_width = IEEE80211_RX_FW_80MHZ;
rx_stats->c_width = IEEE80211_RX_FW_160MHZ;
rx_stats->c_pktflags |= IEEE80211_RX_F_LDPC;
rx_stats->c_pktflags |= IEEE80211_RX_F_STBC;
rx_stats->c_pktflags |= IEEE80211_RX_F_DECRYPTED;
rx_stats->c_pktflags |= IEEE80211_RX_F_PN_VALIDATED;
rx_stats->c_pktflags |= IEEE80211_RX_F_IV_STRIP;
rx_stats->c_pktflags |= IEEE80211_RX_F_ICV_STRIP;
rx_stats->c_pktflags |= IEEE80211_RX_F_MIC_STRIP;
rx_stats->c_pktflags |= IEEE80211_RX_F_MMIC_STRIP;
rx_stats->c_pktflags |= IEEE80211_RX_F_FAIL_MMIC;
rx_stats->c_pktflags |= IEEE80211_RX_F_FAIL_FCSCRC;
struct ieee80211_rx_stats rx_stats;
lkpi_convert_rx_status(hw, lsta, rx_status, &rx_stats, &rssi);
ok = ieee80211_add_rx_params(m, &rx_stats);
rtap->wr_chan_freq = htole16(rx_stats.c_freq);
if (ic->ic_curchan->ic_ieee == rx_stats.c_ieee)
rtap->wr_dbm_antnoise = rx_stats.c_nf;
struct iflib_dma_info rx_stats[BNXT_MAX_NUM_QUEUES];
"ucast_pkts", CTLFLAG_RD, &rx_stats->rx_ucast_pkts,
"mcast_pkts", CTLFLAG_RD, &rx_stats->rx_mcast_pkts,
"bcast_pkts", CTLFLAG_RD, &rx_stats->rx_bcast_pkts,
&rx_stats->rx_discard_pkts, "discarded receive packets");
"error_pkts", CTLFLAG_RD, &rx_stats->rx_error_pkts,
"ucast_bytes", CTLFLAG_RD, &rx_stats->rx_ucast_bytes,
"mcast_bytes", CTLFLAG_RD, &rx_stats->rx_mcast_bytes,
"bcast_bytes", CTLFLAG_RD, &rx_stats->rx_bcast_bytes,
"tpa_pkts", CTLFLAG_RD, &rx_stats->tpa_pkts,
"tpa_bytes", CTLFLAG_RD, &rx_stats->tpa_bytes,
"tpa_events", CTLFLAG_RD, &rx_stats->tpa_events,
"tpa_aborts", CTLFLAG_RD, &rx_stats->tpa_aborts,
struct ctx_hw_stats *rx_stats = (void *)softc->rx_stats[rxr].idi_vaddr;
softc->rx_stats[i].idi_paddr);
iflib_dma_free(&softc->rx_stats[i]);
&softc->rx_stats[i], 0);
bus_dmamap_sync(softc->rx_stats[i].idi_tag, softc->rx_stats[i].idi_map,
if (softc->rx_stats[i].idi_vaddr)
iflib_dma_free(&softc->rx_stats[i]);
static const char *rx_stats[MAX_PM_NSTATS] = {
sbuf_printf(sb, "\n%-13s %10u %20ju", rx_stats[i], rx_cnt[i],
sbuf_printf(sb, "\n%-13s %10u %20ju", rx_stats[i], rx_cnt[i],
sbuf_printf(sb, "\n%-13s %10u %20ju", rx_stats[i], rx_cnt[i],
counter_u64_add(rx_ring->rx_stats.mjum_alloc_fail, 1);
counter_u64_add(rx_ring->rx_stats.mbuf_alloc_fail, 1);
counter_u64_add(rx_ring->rx_stats.dma_mapping_err, 1);
counter_u64_add(rx_ring->rx_stats.refil_partial, 1);
counter_u64_add(rx_ring->rx_stats.empty_rx_ring,
ena_alloc_counters((counter_u64_t *)&rxr->rx_stats,
sizeof(rxr->rx_stats));
ena_free_counters((counter_u64_t *)&rxr->rx_stats,
sizeof(rxr->rx_stats));
ena_reset_counters((counter_u64_t *)&rx_ring->rx_stats,
sizeof(rx_ring->rx_stats));
struct ena_stats_rx rx_stats;
counter_u64_add(rx_ring->rx_stats.mbuf_alloc_fail, 1);
counter_u64_add(rx_ring->rx_stats.csum_bad, 1);
counter_u64_add(rx_ring->rx_stats.csum_bad, 1);
counter_u64_add(rx_ring->rx_stats.csum_good, 1);
counter_u64_add(rx_ring->rx_stats.bad_desc_num,
counter_u64_add(rx_ring->rx_stats.bad_req_id,
counter_u64_add_protected(rx_ring->rx_stats.bytes,
counter_u64_add_protected(rx_ring->rx_stats.cnt, 1);
counter_u64_add(ctx->ring->rx_stats.bad_desc_num, 1);
counter_u64_add(ctx->ring->rx_stats.bad_req_id, 1);
counter_u64_add_protected(ctx->ring->rx_stats.bytes, len);
counter_u64_add_protected(ctx->ring->rx_stats.cnt, 1);
struct ena_stats_rx *rx_stats;
rx_stats = &rx_ring->rx_stats;
CTLFLAG_RD, &rx_stats->cnt, "Packets received");
CTLFLAG_RD, &rx_stats->bytes, "Bytes received");
CTLFLAG_RD, &rx_stats->refil_partial,
CTLFLAG_RD, &rx_stats->csum_bad, "Bad RX checksum");
"mbuf_alloc_fail", CTLFLAG_RD, &rx_stats->mbuf_alloc_fail,
"mjum_alloc_fail", CTLFLAG_RD, &rx_stats->mjum_alloc_fail,
"dma_mapping_err", CTLFLAG_RD, &rx_stats->dma_mapping_err,
CTLFLAG_RD, &rx_stats->bad_desc_num,
CTLFLAG_RD, &rx_stats->bad_req_id, "Bad request id count");
CTLFLAG_RD, &rx_stats->empty_rx_ring,
CTLFLAG_RD, &rx_stats->csum_good,
struct rx_stats stats;
struct mana_stats *rx_stats = &rxq->stats;
counter_u64_add_protected(rx_stats->packets, 1);
counter_u64_add_protected(rx_stats->bytes, pkt_len);
struct mana_stats *tx_stats, *rx_stats;
rx_stats = &rxq->stats;
CTLFLAG_RD, &rx_stats->packets, "Packets received");
CTLFLAG_RD, &rx_stats->bytes, "Bytes received");
&rx_stats->mbuf_alloc_fail, "Failed mbuf allocs");
&rx_stats->partial_refill, "Partially refilled mbuf");
&rx_stats->dma_mapping_err, "DMA mapping errors");
rq->rx_stats.rx_pkts++;
rq->rx_stats.rx_bytes += cq_info.pkt_size;
rq->rx_stats.rx_frags += cq_info.num_frags;
rq->rx_stats.rx_ucast_pkts++;
rq->rx_stats.rx_pkts++;
rq->rx_stats.rx_bytes += cqe->u0.s.pkt_size;
rq->rx_stats.rx_frags += cqe->u0.s.num_fragments;
rq->rx_stats.rx_mcast_pkts++;
rq->rx_stats.rx_ucast_pkts++;
rq->rx_stats.rxcp_err++;
rq->rx_stats.rx_compl++;
rq->rx_stats.rxcp_err++;
rq->rx_stats.rx_compl++;
rq->rx_stats.rxcp_err++;
rq->rx_stats.rx_compl++;
rxpkts = rq->rx_stats.rx_pkts;
rxpkts += rq->rx_stats.rx_pkts;
struct oce_rx_queue_stats rx_stats;
adapter_stats->rx.t_rx_pkts += sc->rq[i]->rx_stats.rx_pkts;
adapter_stats->rx.t_rx_bytes += sc->rq[i]->rx_stats.rx_bytes;
adapter_stats->rx.t_rx_frags += sc->rq[i]->rx_stats.rx_frags;
sc->rq[i]->rx_stats.rx_mcast_pkts;
sc->rq[i]->rx_stats.rx_ucast_pkts;
adapter_stats->rx.t_rxcp_errs += sc-> rq[i]->rx_stats.rxcp_err;
sc->rq[i]->rx_stats.rx_drops_no_frags = erx_stats->rx_drops_no_fragments[sc->rq[i]->rq_id];
CTLFLAG_RD, &sc->rq[i]->rx_stats.rx_pkts,
CTLFLAG_RD, &sc->rq[i]->rx_stats.rx_bytes,
CTLFLAG_RD, &sc->rq[i]->rx_stats.rx_frags, 0,
&sc->rq[i]->rx_stats.rx_mcast_pkts, 0,
&sc->rq[i]->rx_stats.rx_ucast_pkts, 0,
CTLFLAG_RD, &sc->rq[i]->rx_stats.rxcp_err, 0,
CTLFLAG_RD, &sc->rq[i]->rx_stats.rx_drops_no_frags, 0,
CTLFLAG_RD, &sc->rq[i]->rx_stats.rx_pkts,
CTLFLAG_RD, &sc->rq[i]->rx_stats.rx_bytes,
CTLFLAG_RD, &sc->rq[i]->rx_stats.rx_frags, 0,
&sc->rq[i]->rx_stats.rx_mcast_pkts, 0,
&sc->rq[i]->rx_stats.rx_ucast_pkts, 0,
CTLFLAG_RD, &sc->rq[i]->rx_stats.rxcp_err, 0,
nic->bgx_stats.rx_stats[bgx->idx] = bgx->stats;
uint64_t rx_stats[BGX_RX_STATS_COUNT];