2 #define LFDS710_QUEUE_BMM_GET_USER_STATE_FROM_STATE( queue_bmm_state ) ( (queue_bmm_state).user_state )
5 enum lfds710_queue_bmm_query
7 LFDS710_QUEUE_BMM_QUERY_GET_POTENTIALLY_INACCURATE_COUNT,
8 LFDS710_QUEUE_BMM_QUERY_SINGLETHREADED_VALIDATE
11 /***** structures *****/
12 struct lfds710_queue_bmm_element
14 lfds710_pal_uint_t volatile
22 struct lfds710_queue_bmm_state
28 lfds710_pal_uint_t volatile LFDS710_PAL_ALIGN(LFDS710_PAL_ATOMIC_ISOLATION_IN_BYTES)
32 struct lfds710_queue_bmm_element
38 struct lfds710_misc_backoff_state
43 /***** public prototypes *****/
44 void lfds710_queue_bmm_init_valid_on_current_logical_core( struct lfds710_queue_bmm_state *qbmms,
45 struct lfds710_queue_bmm_element *element_array,
46 lfds710_pal_uint_t number_elements,
49 void lfds710_queue_bmm_cleanup( struct lfds710_queue_bmm_state *qbmms,
50 void (*element_cleanup_callback)(struct lfds710_queue_bmm_state *qbmms,
54 int lfds710_queue_bmm_enqueue( struct lfds710_queue_bmm_state *qbmms,
58 int lfds710_queue_bmm_dequeue( struct lfds710_queue_bmm_state *qbmms,
62 void lfds710_queue_bmm_query( struct lfds710_queue_bmm_state *qbmms,
63 enum lfds710_queue_bmm_query query_type,