iPXE
Data Fields
ib_work_queue Struct Reference

An Infiniband Work Queue. More...

#include <infiniband.h>

Data Fields

struct ib_queue_pairqp
 Containing queue pair. More...
 
int is_send
 "Is a send queue" flag More...
 
struct ib_completion_queuecq
 Associated completion queue. More...
 
struct list_head list
 List of work queues on this completion queue. More...
 
uint32_t psn
 Packet sequence number. More...
 
unsigned int num_wqes
 Number of work queue entries. More...
 
unsigned int fill
 Number of occupied work queue entries. More...
 
unsigned long next_idx
 Next work queue entry index. More...
 
struct io_buffer ** iobufs
 I/O buffers assigned to work queue. More...
 
void * drv_priv
 Driver private data. More...
 

Detailed Description

An Infiniband Work Queue.

Definition at line 100 of file infiniband.h.

Field Documentation

◆ qp

struct ib_queue_pair* ib_work_queue::qp

◆ is_send

int ib_work_queue::is_send

◆ cq

struct ib_completion_queue* ib_work_queue::cq

Associated completion queue.

Definition at line 106 of file infiniband.h.

Referenced by flexboot_nodnic_complete_all_tx(), ib_find_wq(), ib_poll_cq(), linda_poll_cq(), and qib7322_poll_cq().

◆ list

struct list_head ib_work_queue::list

List of work queues on this completion queue.

Definition at line 108 of file infiniband.h.

Referenced by flexboot_nodnic_complete_all_tx(), ib_find_wq(), ib_poll_cq(), linda_poll_cq(), and qib7322_poll_cq().

◆ psn

uint32_t ib_work_queue::psn

Packet sequence number.

Definition at line 110 of file infiniband.h.

◆ num_wqes

unsigned int ib_work_queue::num_wqes

◆ fill

unsigned int ib_work_queue::fill

Number of occupied work queue entries.

Definition at line 114 of file infiniband.h.

Referenced by flexboot_nodnic_complete_all_tx(), linda_complete_recv(), linda_poll_send_wq(), qib7322_complete_recv(), and qib7322_poll_send_wq().

◆ next_idx

unsigned long ib_work_queue::next_idx

Next work queue entry index.

This is the index of the next entry to be filled (i.e. the first empty entry). This value is not bounded by num_wqes; users must logical-AND with (num_wqes-1) to generate an array index.

Definition at line 122 of file infiniband.h.

Referenced by arbel_post_recv(), arbel_post_send(), flexboot_nodnic_post_recv(), flexboot_nodnic_post_send(), golan_post_recv(), hermon_post_recv(), and hermon_post_send().

◆ iobufs

struct io_buffer** ib_work_queue::iobufs

◆ drv_priv

void* ib_work_queue::drv_priv

Driver private data.

Definition at line 126 of file infiniband.h.

Referenced by ib_wq_get_drvdata(), and ib_wq_set_drvdata().


The documentation for this struct was generated from the following file: