Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/infiniband/hw/mana/wr.c shadow_queue_producer_entry() -> shadow_queue_get_element()

Type Parameter Key Value
PARAM_VALUE 0 queue 4096-ptr_max
PARAM_VALUE 0 queue->length 1-u32max
DATA_SOURCE 0 queue $0
RX_PATH
TASK_NOT_RUNNING

drivers/infiniband/hw/mana/cq.c shadow_queue_get_next_to_complete() -> shadow_queue_get_element()

Type Parameter Key Value
PARAM_VALUE 0 queue 4096-ptr_max
DATA_SOURCE 0 queue $0
PARAM_COMPARE 0 queue->next_to_complete_idx != $0->prod_idx
PARAM_COMPARE 1 unmasked_index != $0->prod_idx
PARAM_COMPARE 1 unmasked_index != $0->prod_idx
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &cq->cq_lock
LOCK2 flags
TYPE_LOCK (struct mana_ib_cq)->cq_lock

drivers/infiniband/hw/mana/cq.c shadow_queue_get_next_to_consume() -> shadow_queue_get_element()

Type Parameter Key Value
PARAM_VALUE 0 queue 4096-ptr_max
DATA_SOURCE 0 queue $0
PARAM_COMPARE 0 queue->cons_idx != $0->next_to_complete_idx
PARAM_COMPARE 1 unmasked_index != $0->next_to_complete_idx
PARAM_COMPARE 1 unmasked_index != $0->next_to_complete_idx
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &cq->cq_lock
LOCK2 flags
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mana_ib_cq)->cq_lock