Defined in 1 files as a function:

Referenced in 12 files:

Smatch caller information:

drivers/scsi/scsi_debug.c dif_copy_prot() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 4096-ptr_max
DATA_SOURCE 0 cmd $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/scsi_debug.c prot_verify_write() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 4096-ptr_max
DATA_SOURCE 0 cmd $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/qla2xxx/qla_iocb.c qla24xx_dif_start_scsi() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ha->hardware_lock
LOCK2 flags
HALF_LOCKED2 &sdev->state_mutex
TYPE_LOCK (struct qla_hw_data)->hardware_lock

drivers/scsi/qla2xxx/qla_iocb.c qla24xx_walk_and_build_prot_sglist() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
HALF_LOCKED2 &ha->hardware_lock
HALF_LOCKED2 &qpair->qp_lock
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/qla2xxx/qla_iocb.c qla24xx_walk_and_build_sglist_no_difb() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
HALF_LOCKED2 &ha->hardware_lock
HALF_LOCKED2 &qpair->qp_lock
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/qla2xxx/qla_iocb.c qla2xxx_dif_start_scsi_mq() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &qpair->qp_lock
LOCK2 flags
HALF_LOCKED2 &sdev->state_mutex
TYPE_LOCK (struct qla_qpair)->qp_lock

drivers/scsi/hisi_sas/hisi_sas_main.c hisi_sas_dif_dma_map() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->ex_dev.cmd_mutex
HALF_LOCKED2 ap->lock

drivers/scsi/hisi_sas/hisi_sas_main.c hisi_sas_dif_dma_map() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->ex_dev.cmd_mutex
HALF_LOCKED2 ap->lock

drivers/scsi/hisi_sas/hisi_sas_main.c hisi_sas_dif_dma_unmap() -> scsi_prot_sglist()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->ex_dev.cmd_mutex
HALF_LOCKED2 ap->lock

drivers/scsi/hisi_sas/hisi_sas_main.c hisi_sas_slot_task_free() -> scsi_prot_sglist()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &hisi_hba->lock

drivers/scsi/lpfc/lpfc_scsi.c lpfc_bg_err_inject() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
DATA_SOURCE 0 cmd $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/lpfc/lpfc_scsi.c lpfc_bg_scsi_prep_dma_buf_s3() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/lpfc/lpfc_scsi.c lpfc_bg_scsi_prep_dma_buf_s3() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/lpfc/lpfc_scsi.c lpfc_bg_scsi_prep_dma_buf_s4() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/lpfc/lpfc_scsi.c lpfc_bg_scsi_prep_dma_buf_s4() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/lpfc/lpfc_scsi.c lpfc_bg_setup_bpl_prot() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 0,4096-ptr_max
DATA_SOURCE 0 cmd $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/lpfc/lpfc_scsi.c lpfc_bg_setup_sgl_prot() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 0,4096-ptr_max
DATA_SOURCE 0 cmd $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/lpfc/lpfc_scsi.c lpfc_calc_bg_err() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &lpfc_cmd->buf_lock
HALF_LOCKED2 &phba->epd_pool.lock
HALF_LOCKED2 &phba->sli4_hba.nvmels_wq->pring->ring_lock
TYPE_LOCK (struct lpfc_io_buf)->buf_lock

drivers/scsi/lpfc/lpfc_scsi.c lpfc_scsi_unprep_dma_buf() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &psb->buf_lock

drivers/scsi/qla2xxx/qla_isr.c qla2x00_handle_dif_error() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ha->hardware_lock
HALF_LOCKED2 flags

drivers/scsi/virtio_scsi.c __virtscsi_add_cmd() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vq->vq_lock
LOCK2 flags
TYPE_LOCK (struct virtio_scsi_vq)->vq_lock

drivers/scsi/virtio_scsi.c __virtscsi_add_cmd() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vq->vq_lock
LOCK2 flags
TYPE_LOCK (struct virtio_scsi_vq)->vq_lock

drivers/infiniband/ulp/iser/iser_initiator.c iser_send_command() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &session->frwd_lock
HALF_LOCKED2 bh

drivers/scsi/hisi_sas/hisi_sas_v3_hw.c prep_ssp_v3_hw() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->ex_dev.cmd_mutex
HALF_LOCKED2 ap->lock

drivers/scsi/qla2xxx/qla_os.c qla2x00_sp_free_dma() -> scsi_prot_sglist()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/scsi/qla2xxx/qla_os.c qla2xxx_qpair_sp_free_dma() -> scsi_prot_sglist()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/target/loopback/tcm_loop.c tcm_loop_target_queue_cmd() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/mpi3mr/mpi3mr_os.c mpi3mr_flush_scmd() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
DATA_SOURCE 0 cmd r blk_mq_rq_to_pdu
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &khd->lock

drivers/scsi/mpi3mr/mpi3mr_os.c mpi3mr_prepare_sg_scmd() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
DATA_SOURCE 0 cmd $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/mpi3mr/mpi3mr_os.c mpi3mr_prepare_sg_scmd() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->prot_sdb 0,4096-ptr_max
DATA_SOURCE 0 cmd $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/mpi3mr/mpi3mr_os.c mpi3mr_process_op_reply_desc() -> scsi_prot_sglist()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
DATA_SOURCE 0 cmd r mpi3mr_scmd_from_host_tag
BIT_INFO 0 cmd->result 0x0,0xf00ff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &drv_cmd->mutex
HALF_LOCKED2 &op_req_q->q_lock
HALF_LOCKED2 flags