Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 6 files:

Smatch caller information:

drivers/infiniband/sw/rdmavt/qp.c rvt_ruc_loopback() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->ibqp.qp_type 2-3
PARAM_VALUE 0 qp->r_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 wqe 4096-ptr_max
PARAM_VALUE 2 status 0,4-5
CAPPED_DATA 0 qp->ibqp.qp_type 1
CAPPED_DATA 0 qp->remote_qpn 1
DATA_SOURCE 0 qp $0
DATA_SOURCE 1 wqe r rvt_get_swqe_ptr
FUZZY_MAX 2 status 5
PARAM_COMPARE 0 qp->s_head != $0->s_last
BIT_INFO 2 status 0x0,0x5
HARD_MAX 0 qp->ibqp.qp_type 3
HARD_MAX 2 status 5
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 rcu_read
LOCK2 0 &qp->r_lock
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rvt_qp)->r_lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/sw/rdmavt/qp.c rvt_ruc_loopback() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->ibqp.qp_type 2-3
PARAM_VALUE 0 qp->r_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 qp->s_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 wqe 4096-ptr_max
PARAM_VALUE 2 status 0,2,9-13
CAPPED_DATA 0 qp->ibqp.qp_type 1
CAPPED_DATA 0 qp->remote_qpn 1
DATA_SOURCE 0 qp $0
DATA_SOURCE 1 wqe r rvt_get_swqe_ptr
FUZZY_MAX 2 status 13
PARAM_COMPARE 0 qp->s_head != $0->s_last
HARD_MAX 0 qp->ibqp.qp_type 3
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 rcu_read
LOCK2 0 &qp->r_lock
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rvt_qp)->r_lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/hw/hfi1/verbs.c hfi1_verbs_send() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->priv 4096-ptr_max
PARAM_VALUE 0 qp->s_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 status 21
CAPPED_DATA 0 qp 1
DATA_SOURCE 0 qp $0
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/hw/hfi1/verbs.c hfi1_verbs_send_pio() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->priv 4096-ptr_max
PARAM_VALUE 0 qp->s_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 qp->s_wqe 1-u64max
PARAM_VALUE 1 wqe 1-u64max
PARAM_VALUE 2 status 0,21
CAPPED_DATA 0 qp 1
DATA_SOURCE 0 qp $0
BIT_INFO 2 status 0x0,0x15
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/hw/hfi1/verbs.c verbs_sdma_complete() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->s_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 wqe 1-u64max
PARAM_VALUE 2 status 0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &sde->head_lock.lock
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &sde->tail_lock
HALF_LOCKED2 flags
TYPE_LOCK (struct rvt_qp)->s_lock
TYPE_LOCK (struct seqlock)->lock

drivers/infiniband/hw/hfi1/ud.c hfi1_make_ud_req() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->priv 4096-ptr_max
PARAM_VALUE 1 wqe 4096-ptr_max
PARAM_VALUE 2 status 5
CAPPED_DATA 0 qp 1
DATA_SOURCE 0 qp $0
DATA_SOURCE 1 wqe r rvt_get_swqe_ptr
PARAM_COMPARE 0 qp->s_head != $0->s_last
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 ps.flags
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/hw/hfi1/ud.c hfi1_make_ud_req() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->ibqp.qp_type 1
PARAM_VALUE 0 qp->priv 4096-ptr_max
PARAM_VALUE 0 qp->s_cur 0-4294967294
PARAM_VALUE 0 qp->s_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 wqe 4096-ptr_max
PARAM_VALUE 2 status 0
CAPPED_DATA 0 qp 1
CAPPED_DATA 0 qp->s_cur 1
CAPPED_DATA 0 qp->s_size 1
DATA_SOURCE 0 qp $0
DATA_SOURCE 1 wqe r rvt_get_swqe_ptr
BIT_INFO 0 qp->s_cur 0x0,0x7fffffff
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 ps.flags
LOCK2 tflags
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/hw/hfi1/rc.c hfi1_make_rc_req() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->priv 4096-ptr_max
PARAM_VALUE 1 wqe 4096-ptr_max
PARAM_VALUE 1 wqe->wr.opcode 7,32
PARAM_VALUE 1 wqe->wr.send_flags s32min-(-1),1-s32max
PARAM_VALUE 2 status 0,4
CAPPED_DATA 0 qp 1
CAPPED_DATA 0 qp->s_last 1
DATA_SOURCE 0 qp $0
DATA_SOURCE 1 wqe r rvt_get_swqe_ptr
FUZZY_MAX 2 status 4
PARAM_COMPARE 0 qp->s_head != $0->s_last
BIT_INFO 0 qp->s_flags 0x0,0xfbff7f7f
BIT_INFO 1 wqe->wr.opcode 0x0,0x27
BIT_INFO 2 status 0x0,0x4
HARD_MAX 2 status 4
PREEMPT_ADD
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 ps.flags
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/hw/hfi1/rc.c hfi1_trdma_send_complete() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 1 wqe 4096-ptr_max
PARAM_VALUE 1 wqe->priv 0,4096-ptr_max
PARAM_VALUE 1 wqe->priv->tid_req.flows 0
PARAM_VALUE 2 status 0,2,5,9-13
CAPPED_DATA 0 qp 1
DATA_SOURCE 0 qp $0
DATA_SOURCE 1 wqe $1
DATA_SOURCE 2 status $2
FUZZY_MAX 2 status 13
HARD_MAX 2 status 13
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &packet->qp->r_lock
HALF_LOCKED2 flags
HALF_LOCKED2 ps.flags
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &qp->r_lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/hw/hfi1/rc.c rc_rcv_resp() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->priv 4096-ptr_max
PARAM_VALUE 0 qp->remote_ah_attr.ah_flags 1
PARAM_VALUE 0 qp->s_mig_state 0,2
PARAM_VALUE 1 wqe 4096-ptr_max
PARAM_VALUE 2 status 1-2
CAPPED_DATA 0 qp->s_acked 1
CAPPED_DATA 0 qp->s_last 1
DATA_SOURCE 1 wqe r rvt_get_swqe_ptr
FUZZY_MAX 2 status 2
PARAM_COMPARE 0 qp->s_acked == $0->s_last
BIT_INFO 0 qp->r_flags 0x0,0xfd
HARD_MAX 2 status 2
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &packet->qp->r_lock
LOCK2 flags
LOCK2 flags
LOCK2 rcu_read
LOCK2 0 &qp->s_lock
TYPE_LOCK (struct rvt_qp)->r_lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/hw/hfi1/uc.c hfi1_make_uc_req() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->priv 4096-ptr_max
PARAM_VALUE 0 qp->priv->s_ahg 4096-ptr_max
PARAM_VALUE 0 qp->s_ahgidx (-1)
PARAM_VALUE 0 qp->s_flags 0-1073741823
PARAM_VALUE 1 wqe 4096-ptr_max
PARAM_VALUE 2 status 5
CAPPED_DATA 0 qp 1
DATA_SOURCE 0 qp $0
DATA_SOURCE 1 wqe r rvt_get_swqe_ptr
PARAM_COMPARE 0 qp->s_head != $0->s_last
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 ps.flags
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/hw/hfi1/uc.c hfi1_make_uc_req() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->priv 4096-ptr_max
PARAM_VALUE 0 qp->s_wqe 0
PARAM_VALUE 1 wqe 4096-ptr_max
PARAM_VALUE 1 wqe->wr.opcode 7,32
PARAM_VALUE 1 wqe->wr.send_flags s32min-(-1),134217728-s32max
PARAM_VALUE 2 status 0,4
CAPPED_DATA 0 qp 1
CAPPED_DATA 0 qp->s_last 1
DATA_SOURCE 0 qp $0
DATA_SOURCE 1 wqe r rvt_get_swqe_ptr
FUZZY_MAX 1 wqe->wr.opcode 32
FUZZY_MAX 2 status 4
PARAM_COMPARE 0 qp->s_head != $0->s_last
BIT_INFO 1 wqe->wr.opcode 0x0,0x27
BIT_INFO 2 status 0x0,0x4
HARD_MAX 2 status 4
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 ps.flags
LOCK2 0 &qp->s_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/infiniband/hw/hfi1/tid_rdma.c hfi1_trdma_send_complete() -> rvt_send_complete()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 1 wqe 4096-ptr_max
PARAM_VALUE 1 wqe->priv 0,4096-ptr_max
PARAM_VALUE 1 wqe->priv->tid_req.flows 0
PARAM_VALUE 2 status 12,15
DATA_SOURCE 0 qp $0
DATA_SOURCE 1 wqe $1
DATA_SOURCE 2 status $2
HARD_MAX 2 status 15
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &qp->s_lock
HALF_LOCKED2 flags
HALF_LOCKED2 ps.flags
HALF_LOCKED2 0 &qp->r_lock
HALF_LOCKED2 0 &qp->s_lock
TYPE_LOCK (struct rvt_qp)->s_lock