Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 13 files:

Smatch caller information:

drivers/infiniband/hw/mlx5/qp.c _create_kernel_qp() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages

drivers/net/ethernet/mellanox/mlx5/core/lib/aso.c create_aso_cq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages

drivers/net/ethernet/mellanox/mlx5/core/lib/aso.c create_aso_sq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages

drivers/vfio/pci/mlx5/cmd.c mlx5vf_create_cq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
MEM_ZERO 0 buf
NOCHECK_CALL
LOCK2 &mvdev->state_mutex
TYPE_LOCK (struct mlx5vf_pci_core_device)->state_mutex

drivers/vfio/pci/mlx5/cmd.c mlx5vf_create_rc_qp() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages
LOCK2 &mvdev->state_mutex
TYPE_LOCK (struct mlx5vf_pci_core_device)->state_mutex

drivers/vdpa/mlx5/net/mlx5_vnet.c cq_create() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ndev->reslock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mlx5_vdpa_net)->reslock

drivers/vdpa/mlx5/net/mlx5_vnet.c qp_prepare() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages
HALF_LOCKED2 &ndev->reslock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mlx5_vdpa_net)->reslock

drivers/net/ethernet/mellanox/mlx5/core/eq.c create_map_eq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages
HALF_LOCKED2 &eq_table->lock
HALF_LOCKED2 &table->comp_lock

drivers/infiniband/hw/mlx5/srq.c create_srq_kernel() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 1-18446744073709551614
BUF_SIZE 1 pas 8
DATA_SOURCE 1 pas r _kvmalloc_array_node_noprof
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages
HALF_LOCKED2 &devr->srq_lock
HALF_LOCKED2 global &device_list_mutex

drivers/net/ethernet/mellanox/mlx5/core/steering/hws/send.c hws_send_ring_create_cq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &esw->offloads.reps_lock

drivers/net/ethernet/mellanox/mlx5/core/steering/hws/send.c hws_send_ring_create_sq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &esw->offloads.reps_lock

drivers/net/ethernet/mellanox/mlx5/core/en_main.c mlx5e_create_cq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages

drivers/net/ethernet/mellanox/mlx5/core/en_main.c mlx5e_create_rq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages

drivers/net/ethernet/mellanox/mlx5/core/en_main.c mlx5e_create_sq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &priv->state_lock
TYPE_LOCK (struct mlx5e_priv)->state_lock

drivers/net/ethernet/mellanox/mlx5/core/fpga/conn.c mlx5_fpga_conn_create_cq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages

drivers/net/ethernet/mellanox/mlx5/core/fpga/conn.c mlx5_fpga_conn_create_qp() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages

drivers/infiniband/hw/mlx5/cq.c create_cq_kernel() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/infiniband/hw/mlx5/cq.c mlx5_ib_resize_cq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
NOCHECK_CALL
LOCK2 &cq->resize_mutex
HALF_LOCKED2 &file->device->disassociate_srcu
TYPE_LOCK (struct mlx5_ib_cq)->resize_mutex

drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_send.c dr_create_cq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &esw->offloads.reps_lock

drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_send.c dr_create_rc_qp() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &esw->offloads.reps_lock

drivers/net/ethernet/mellanox/mlx5/core/wc.c create_wc_cq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 pas 4096-ptr_max
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages
LOCK2 wc_state_lock
HALF_LOCKED2 &file->device->disassociate_srcu
HALF_LOCKED2 &file->disassociation_lock

drivers/net/ethernet/mellanox/mlx5/core/wc.c create_wc_sq() -> mlx5_fill_page_frag_array()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->frags 1-u64max
PARAM_VALUE 0 buf->npages 0-524288
PARAM_VALUE 0 buf->page_shift 12
PARAM_VALUE 1 *pas 0-255
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 buf->npages
LOCK2 wc_state_lock
HALF_LOCKED2 &file->device->disassociate_srcu
HALF_LOCKED2 &file->disassociation_lock