FD.io VPP  v18.07-34-g55fbdb9
Vector Packet Processing
queue.h File Reference
+ Include dependency graph for queue.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef struct _svm_queue svm_queue_t
 
typedef svm_queue_t unix_shared_memory_queue_t
 

Enumerations

enum  svm_q_conditional_wait_t { SVM_Q_WAIT = 0, SVM_Q_NOWAIT, SVM_Q_TIMEDWAIT }
 

Functions

svm_queue_tsvm_queue_init (int nels, int elsize, int consumer_pid, int signal_when_queue_non_empty)
 
void svm_queue_free (svm_queue_t *q)
 
int svm_queue_add (svm_queue_t *q, u8 *elem, int nowait)
 
int svm_queue_add2 (svm_queue_t *q, u8 *elem, u8 *elem2, int nowait)
 
int svm_queue_sub (svm_queue_t *q, u8 *elem, svm_q_conditional_wait_t cond, u32 time)
 
int svm_queue_sub2 (svm_queue_t *q, u8 *elem)
 
void svm_queue_lock (svm_queue_t *q)
 
void svm_queue_unlock (svm_queue_t *q)
 
int svm_queue_is_full (svm_queue_t *q)
 
int svm_queue_add_nolock (svm_queue_t *q, u8 *elem)
 
int svm_queue_sub_raw (svm_queue_t *q, u8 *elem)
 
int svm_queue_add_raw (svm_queue_t *q, u8 *elem)
 

Typedef Documentation

typedef struct _svm_queue svm_queue_t

Definition at line 77 of file queue.h.

Enumeration Type Documentation

Enumerator
SVM_Q_WAIT 

blocking call

SVM_Q_NOWAIT 

non-blocking call

SVM_Q_TIMEDWAIT 

blocking call, return on signal or time-out

Definition at line 39 of file queue.h.

Function Documentation

int svm_queue_add ( svm_queue_t q,
u8 elem,
int  nowait 
)

Definition at line 184 of file queue.c.

+ Here is the caller graph for this function:

int svm_queue_add2 ( svm_queue_t q,
u8 elem,
u8 elem2,
int  nowait 
)

Definition at line 239 of file queue.c.

+ Here is the caller graph for this function:

int svm_queue_add_nolock ( svm_queue_t q,
u8 elem 
)

Definition at line 124 of file queue.c.

+ Here is the caller graph for this function:

int svm_queue_add_raw ( svm_queue_t q,
u8 elem 
)

Definition at line 158 of file queue.c.

void svm_queue_free ( svm_queue_t q)

Definition at line 95 of file queue.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

svm_queue_t* svm_queue_init ( int  nels,
int  elsize,
int  consumer_pid,
int  signal_when_queue_non_empty 
)

Definition at line 51 of file queue.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int svm_queue_is_full ( svm_queue_t q)

Definition at line 115 of file queue.c.

+ Here is the caller graph for this function:

void svm_queue_lock ( svm_queue_t q)

Definition at line 103 of file queue.c.

+ Here is the caller graph for this function:

int svm_queue_sub ( svm_queue_t q,
u8 elem,
svm_q_conditional_wait_t  cond,
u32  time 
)

Definition at line 303 of file queue.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int svm_queue_sub2 ( svm_queue_t q,
u8 elem 
)

Definition at line 374 of file queue.c.

+ Here is the caller graph for this function:

int svm_queue_sub_raw ( svm_queue_t q,
u8 elem 
)

Definition at line 404 of file queue.c.

+ Here is the caller graph for this function:

void svm_queue_unlock ( svm_queue_t q)

Definition at line 109 of file queue.c.

+ Here is the caller graph for this function: