Defined in 4 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/vfio/pci/mlx5/cmd.c mlx5vf_cq_poll_one() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
BUF_SIZE 0 cq 344
DATA_SOURCE 0 cq $0
LOCK2 &mvdev->state_mutex
HALF_LOCKED2 &iopt->iova_rwsem
TYPE_LOCK (struct mlx5vf_pci_core_device)->state_mutex

drivers/vdpa/mlx5/net/mlx5_vnet.c next_cqe_sw() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
DATA_SOURCE 0 cq $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ibdev->reset_flow_resource_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 flags

drivers/infiniband/hw/mlx5/cq.c __mlx5_ib_cq_clean() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
DATA_SOURCE 0 cq $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->reset_flow_resource_lock
HALF_LOCKED2 &qp->mutex
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 0 &cq->lock

drivers/infiniband/hw/mlx5/cq.c __mlx5_ib_cq_clean() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
PARAM_VALUE 0 cq->buf.fbc.frags 4096-ptr_max
DATA_SOURCE 0 cq $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->reset_flow_resource_lock
HALF_LOCKED2 &qp->mutex
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 0 &cq->lock

drivers/infiniband/hw/mlx5/cq.c copy_resize_cqes() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
CAPPED_DATA 0 cq->resize_buf 1
CAPPED_DATA 0 cq->resize_buf->frag_buf.npages 1
DATA_SOURCE 0 cq $0
PREEMPT_ADD
LOCK2 flags
LOCK2 0 &cq->lock
LOCK2 0 &cq->resize_mutex
HALF_LOCKED2 &file->device->disassociate_srcu
TYPE_LOCK (struct mlx5_ib_cq)->lock
TYPE_LOCK (struct mlx5_ib_cq)->resize_mutex

drivers/infiniband/hw/mlx5/cq.c copy_resize_cqes() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
PARAM_VALUE 0 cq->buf.fbc.frags 4096-ptr_max
CAPPED_DATA 0 cq->resize_buf 1
CAPPED_DATA 0 cq->resize_buf->frag_buf.npages 1
DATA_SOURCE 0 cq $0
PREEMPT_ADD
LOCK2 flags
LOCK2 0 &cq->lock
LOCK2 0 &cq->resize_mutex
HALF_LOCKED2 &file->device->disassociate_srcu
TYPE_LOCK (struct mlx5_ib_cq)->lock
TYPE_LOCK (struct mlx5_ib_cq)->resize_mutex

drivers/infiniband/hw/mlx5/cq.c next_cqe_sw() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
DATA_SOURCE 0 cq $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &cq->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mlx5_ib_cq)->lock

drivers/infiniband/hw/mlx4/cq.c __mlx4_ib_cq_clean() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
CAPPED_DATA 0 cq 1
DATA_SOURCE 0 cq $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 n unit_byte
HALF_LOCKED2 &dev->reset_flow_resource_lock
HALF_LOCKED2 &send_cq->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 0 &cq->lock
TYPE_LOCK (struct mlx4_ib_cq)->lock

drivers/infiniband/hw/mlx4/cq.c __mlx4_ib_cq_clean() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
CAPPED_DATA 0 cq 1
DATA_SOURCE 0 cq $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 n unit_byte
HALF_LOCKED2 &dev->reset_flow_resource_lock
HALF_LOCKED2 &send_cq->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 0 &cq->lock
TYPE_LOCK (struct mlx4_ib_cq)->lock

drivers/infiniband/hw/mlx4/cq.c mlx4_ib_get_outstanding_cqes() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
DATA_SOURCE 0 cq $0
UNITS 1 n unit_byte
LOCK2 0 &cq->resize_mutex
HALF_LOCKED2 &file->device->disassociate_srcu
TYPE_LOCK (struct mlx4_ib_cq)->resize_mutex

drivers/infiniband/hw/mlx4/cq.c mlx4_ib_get_outstanding_cqes() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
DATA_SOURCE 0 cq $0
UNITS 1 n unit_byte
LOCK2 0 &cq->resize_mutex
HALF_LOCKED2 &file->device->disassociate_srcu
TYPE_LOCK (struct mlx4_ib_cq)->resize_mutex

drivers/infiniband/hw/mlx4/cq.c next_cqe_sw() -> get_sw_cqe()

Type Parameter Key Value
PARAM_VALUE 0 cq 4096-ptr_max
DATA_SOURCE 0 cq $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 n unit_byte
LOCK2 flags
LOCK2 0 &cq->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mlx4_ib_cq)->lock