Motr  M0
nlx_core_bev_cqueue Struct Reference

#include <lnet_core_types.h>

Collaboration diagram for nlx_core_bev_cqueue:
Collaboration graph

Data Fields

size_t cbcq_nr
 
struct m0_atomic64 cbcq_count
 
nlx_core_opaque_ptr_t cbcq_consumer
 
struct nlx_core_kmem_loc cbcq_producer_loc
 

Detailed Description

Buffer event queue, operable from either kernel and user space with a single producer and single consumer.

Definition at line 144 of file lnet_core_types.h.

Field Documentation

◆ cbcq_consumer

nlx_core_opaque_ptr_t cbcq_consumer

The consumer removes elements from this anchor. The consumer pointer value is in the address space of the consumer (transport).

Definition at line 156 of file lnet_core_types.h.

◆ cbcq_count

struct m0_atomic64 cbcq_count

Number of elements in the queue that can be consumed.

Definition at line 149 of file lnet_core_types.h.

◆ cbcq_nr

size_t cbcq_nr

Number of elements currently in the queue.

Definition at line 146 of file lnet_core_types.h.

◆ cbcq_producer_loc

struct nlx_core_kmem_loc cbcq_producer_loc

The producer adds links to this anchor. The producer reference is kept in the form of a nlx_core_kmem_loc so that queue elements do not all need to be mapped.

Definition at line 163 of file lnet_core_types.h.


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