drivers/infiniband/hw/mana/counters.h
Source file repositories/reference/linux-study-clean/drivers/infiniband/hw/mana/counters.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/infiniband/hw/mana/counters.h- Extension
.h- Size
- 1653 bytes
- Lines
- 63
- Domain
- Driver Families
- Bucket
- drivers/infiniband
- Inferred role
- Driver Families: implementation source
- Status
- source implementation candidate
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
mana_ib.h
Detected Declarations
enum mana_ib_port_countersenum mana_ib_device_counters
Annotated Snippet
#ifndef _COUNTERS_H_
#define _COUNTERS_H_
#include "mana_ib.h"
enum mana_ib_port_counters {
MANA_IB_REQUESTER_TIMEOUT,
MANA_IB_REQUESTER_OOS_NAK,
MANA_IB_REQUESTER_RNR_NAK,
MANA_IB_RESPONDER_RNR_NAK,
MANA_IB_RESPONDER_OOS,
MANA_IB_RESPONDER_DUP_REQUEST,
MANA_IB_REQUESTER_IMPLICIT_NAK,
MANA_IB_REQUESTER_READRESP_PSN_MISMATCH,
MANA_IB_NAK_INV_REQ,
MANA_IB_NAK_ACCESS_ERR,
MANA_IB_NAK_OPP_ERR,
MANA_IB_NAK_INV_READ,
MANA_IB_RESPONDER_LOCAL_LEN_ERR,
MANA_IB_REQUESTOR_LOCAL_PROT_ERR,
MANA_IB_RESPONDER_REM_ACCESS_ERR,
MANA_IB_RESPONDER_LOCAL_QP_ERR,
MANA_IB_RESPONDER_MALFORMED_WQE,
MANA_IB_GENERAL_HW_ERR,
MANA_IB_REQUESTER_RNR_NAK_RETRIES_EXCEEDED,
MANA_IB_REQUESTER_RETRIES_EXCEEDED,
MANA_IB_TOTAL_FATAL_ERR,
MANA_IB_RECEIVED_CNPS,
MANA_IB_NUM_QPS_CONGESTED,
MANA_IB_RATE_INC_EVENTS,
MANA_IB_NUM_QPS_RECOVERED,
MANA_IB_CURRENT_RATE,
MANA_IB_DUP_RX_REQ,
MANA_IB_TX_BYTES,
MANA_IB_RX_BYTES,
MANA_IB_RX_SEND_REQ,
MANA_IB_RX_WRITE_REQ,
MANA_IB_RX_READ_REQ,
MANA_IB_TX_PKT,
MANA_IB_RX_PKT,
};
enum mana_ib_device_counters {
MANA_IB_SENT_CNPS,
MANA_IB_RECEIVED_ECNS,
MANA_IB_RECEIVED_CNP_COUNT,
MANA_IB_QP_CONGESTED_EVENTS,
MANA_IB_QP_RECOVERED_EVENTS,
MANA_IB_DEV_RATE_INC_EVENTS,
};
struct rdma_hw_stats *mana_ib_alloc_hw_port_stats(struct ib_device *ibdev,
u32 port_num);
struct rdma_hw_stats *mana_ib_alloc_hw_device_stats(struct ib_device *ibdev);
int mana_ib_get_hw_stats(struct ib_device *ibdev, struct rdma_hw_stats *stats,
u32 port_num, int index);
#endif /* _COUNTERS_H_ */
Annotation
- Immediate include surface: `mana_ib.h`.
- Detected declarations: `enum mana_ib_port_counters`, `enum mana_ib_device_counters`.
- Atlas domain: Driver Families / drivers/infiniband.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.