drivers/infiniband/hw/irdma/cm.h

Source file repositories/reference/linux-study-clean/drivers/infiniband/hw/irdma/cm.h

File Facts

System
Linux kernel
Corpus path
drivers/infiniband/hw/irdma/cm.h
Extension
.h
Size
10140 bytes
Lines
417
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.

Dependency Surface

Detected Declarations

Annotated Snippet

struct ietf_mpa_v1 {
	u8 key[IETF_MPA_KEY_SIZE];
	u8 flags;
	u8 rev;
	__be16 priv_data_len;
	u8 priv_data[];
};

struct ietf_rtr_msg {
	__be16 ctrl_ird;
	__be16 ctrl_ord;
};

struct ietf_mpa_v2 {
	u8 key[IETF_MPA_KEY_SIZE];
	u8 flags;
	u8 rev;
	__be16 priv_data_len;
	struct ietf_rtr_msg rtr_msg;
	u8 priv_data[];
};

struct option_base {
	u8 optionnum;
	u8 len;
};

struct option_mss {
	u8 optionnum;
	u8 len;
	__be16 mss;
};

struct option_windowscale {
	u8 optionnum;
	u8 len;
	u8 shiftcount;
};

union all_known_options {
	char eol;
	struct option_base base;
	struct option_mss mss;
	struct option_windowscale windowscale;
};

struct irdma_timer_entry {
	struct list_head list;
	unsigned long timetosend; /* jiffies */
	struct irdma_puda_buf *sqbuf;
	u32 type;
	u32 retrycount;
	u32 retranscount;
	u32 context;
	u32 send_retrans;
	int close_when_complete;
};

/* CM context params */
struct irdma_cm_tcp_context {
	u8 client;
	u32 loc_seq_num;
	u32 loc_ack_num;
	u32 rem_ack_num;
	u32 rcv_nxt;
	u32 loc_id;
	u32 rem_id;
	u32 snd_wnd;
	u32 max_snd_wnd;
	u32 rcv_wnd;
	u32 mss;
	u8 snd_wscale;
	u8 rcv_wscale;
};

struct irdma_apbvt_entry {
	struct hlist_node hlist;
	u32 use_cnt;
	u16 port;
};

struct irdma_cm_listener {
	struct list_head list;
	struct iw_cm_id *cm_id;
	struct irdma_cm_core *cm_core;
	struct irdma_device *iwdev;
	struct list_head child_listen_list;
	struct irdma_apbvt_entry *apbvt_entry;
	enum irdma_cm_listener_state listener_state;
	refcount_t refcnt;

Annotation

Implementation Notes