Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/scsi/libfc/fc_exch.c fc_exch_rrq() -> fc_exch_seq_send()

Type Parameter Key Value
PARAM_VALUE 0 lport 4096-ptr_max
PARAM_VALUE 1 fp 4096-ptr_max
PARAM_VALUE 3 destructor 0
PARAM_VALUE 4 arg 4096-ptr_max
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 1 fp 0-s32max
DATA_SOURCE 1 fp r fc_frame_alloc
DATA_SOURCE 4 arg $0
HALF_LOCKED2 &pool->lock

drivers/scsi/libfc/fc_rport.c fc_rport_enter_prli() -> fc_exch_seq_send()

Type Parameter Key Value
PARAM_VALUE 0 lport 4096-ptr_max
PARAM_VALUE 0 lport->host 4096-ptr_max
PARAM_VALUE 0 lport->service_params 32-u32max
PARAM_VALUE 1 fp 4096-ptr_max
PARAM_VALUE 1 fp->skb.data 4096-ptr_max
PARAM_VALUE 1 fp->skb.data->fh_cs_ctl 0
PARAM_VALUE 1 fp->skb.data->fh_d_id 4096-ptr_max
PARAM_VALUE 1 fp->skb.data->fh_df_ctl 0
PARAM_VALUE 1 fp->skb.data->fh_f_ctl 4096-ptr_max
PARAM_VALUE 1 fp->skb.data->fh_parm_offset 0
PARAM_VALUE 1 fp->skb.data->fh_r_ctl 34
PARAM_VALUE 1 fp->skb.data->fh_s_id 4096-ptr_max
PARAM_VALUE 1 fp->skb.data->fh_type 1
PARAM_VALUE 3 destructor 0
PARAM_VALUE 4 arg 4096-ptr_max
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 4 arg (-1),1-u16max
CAPPED_DATA 1 fp->skb.len 1
DATA_SOURCE 1 fp r fc_frame_alloc
DATA_SOURCE 4 arg $0
PARAM_COMPARE 1 fp->skb.data->fh_d_id == $4->ids.port_id
BIT_INFO 0 lport->service_params 0x20,0xffffffffffffffff
RX_PATH
LOCK2 &rdata->rp_mutex
HALF_LOCKED2 &lport->lp_mutex
TYPE_LOCK (struct fc_rport_priv)->rp_mutex

drivers/scsi/libfc/fc_fcp.c fc_fcp_cmd_send() -> fc_exch_seq_send()

Type Parameter Key Value
PARAM_VALUE 0 lport 4096-ptr_max
PARAM_VALUE 1 fp 4096-ptr_max
PARAM_VALUE 1 fp->skb.cb 4096-ptr_max
PARAM_VALUE 4 arg 4096-ptr_max
PARAM_VALUE 5 timer_msec 0
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 1 fp 0-s32max
DATA_SOURCE 0 lport $0
DATA_SOURCE 1 fp r fc_fcp_frame_alloc
DATA_SOURCE 2 resp $2
DATA_SOURCE 4 arg $1
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
LOCK2 &fsp->scsi_pkt_lock
LOCK2 bh
TYPE_LOCK (struct fc_fcp_pkt)->scsi_pkt_lock

drivers/scsi/libfc/fc_fcp.c fc_fcp_srr() -> fc_exch_seq_send()

Type Parameter Key Value
PARAM_VALUE 1 fp 4096-ptr_max
PARAM_VALUE 4 arg 4096-ptr_max
PARAM_VALUE 5 timer_msec 248,250-536871162
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 1 fp 0-s32max
DATA_SOURCE 1 fp r fc_fcp_frame_alloc
DATA_SOURCE 4 arg $0
PREEMPT_ADD
LOCK2 &fsp->scsi_pkt_lock
LOCK2 bh
TYPE_LOCK (struct fc_fcp_pkt)->scsi_pkt_lock

drivers/scsi/libfc/fc_lport.c fc_lport_ct_request() -> fc_exch_seq_send()

Type Parameter Key Value
PARAM_VALUE 0 lport 4096-ptr_max
PARAM_VALUE 0 lport->lp_mutex.dep_map->name 0-255
PARAM_VALUE 0 lport->lp_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 lport->lp_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 lport->lp_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 lport->lp_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 lport->lp_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 lport->lp_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 fp 4096-ptr_max
PARAM_VALUE 3 destructor 0
PARAM_VALUE 4 arg 4096-ptr_max
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 4 arg 48
CAPPED_DATA 1 fp->skb.len 1
DATA_SOURCE 0 lport $1
DATA_SOURCE 1 fp r fc_frame_alloc
DATA_SOURCE 4 arg r _kzalloc_noprof
DATA_SOURCE 5 timer_msec $3
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &lport->lp_mutex
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct fc_lport)->lp_mutex

drivers/scsi/libfc/fc_lport.c fc_lport_els_request() -> fc_exch_seq_send()

Type Parameter Key Value
PARAM_VALUE 0 lport 4096-ptr_max
PARAM_VALUE 0 lport->lp_mutex.dep_map->name 0-255
PARAM_VALUE 0 lport->lp_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 lport->lp_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 lport->lp_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 lport->lp_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 lport->lp_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 lport->lp_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 fp 4096-ptr_max
PARAM_VALUE 3 destructor 0
PARAM_VALUE 4 arg 4096-ptr_max
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 4 arg 48
CAPPED_DATA 1 fp->skb.len 1
DATA_SOURCE 0 lport $1
DATA_SOURCE 1 fp r fc_frame_alloc
DATA_SOURCE 4 arg r _kzalloc_noprof
DATA_SOURCE 5 timer_msec $3
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &lport->lp_mutex
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct fc_lport)->lp_mutex

drivers/scsi/libfc/fc_elsct.c fc_elsct_send() -> fc_exch_seq_send()

Type Parameter Key Value
PARAM_VALUE 0 lport 4096-ptr_max
PARAM_VALUE 0 lport->host->pseudo_sdev->sdev_dev.dma_io_tlb_mem->phys_limit 0-s64max
PARAM_VALUE 0 lport->host->pseudo_sdev->sdev_gendev.dma_io_tlb_mem->phys_limit 0-s64max
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->alloc 0,1744715142275031040,2065280936184246272,2938795245442469888
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->alloc_pages_op 0,4686288359180861440,6350905364812603392,6978773206971854848
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->dma_supported 0,2528523692154392576,3617072262637035520,5023592177070743552,5276104885786021888
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->free 0,4778164490434129920,7144974343242604544,7861694134817480704
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->free_pages 0,239457316199952384,5196233516945883136,7413093576918179840
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->get_required_mask 0,7770840938859397120
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->get_sgtable 0,1322759480623644672
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->map_phys 0,2506261230157742080,4169194063996235776,4848421345171935232,6326163439792029696
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->map_sg 0,2118452656510775296,2518538481676259328,5872201013595766784,6630017431831871488
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->max_mapping_size 0,8830639662091943936
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->mmap 0,5761417605877342208,7694740394750603264
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->sync_sg_for_cpu 0,4862850025765572608
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->sync_sg_for_device 0,3732476178258022400
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->sync_single_for_cpu 0,1155325867376779264
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->sync_single_for_device 0,8781567156597239808
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->unmap_phys 0,3634718672199266304,5690836758666383360,6257189515678003200,7756707427785986048
PARAM_VALUE 0 lport->host->shost_dev.dma_ops->unmap_sg 0,1256335292805263360,8472845699660435456,8676762248147066880,8920167536469053440
PARAM_VALUE 0 lport->host->shost_dev.kobj.parent->sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 lport->host->shost_dev.kobj.sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 lport->host->shost_dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->alloc 0,1744715142275031040,2065280936184246272,2938795245442469888
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->alloc_pages_op 0,4686288359180861440,6350905364812603392,6978773206971854848
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->dma_supported 0,2528523692154392576,3617072262637035520,5023592177070743552,5276104885786021888
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->free 0,4778164490434129920,7144974343242604544,7861694134817480704
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->free_pages 0,239457316199952384,5196233516945883136,7413093576918179840
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->get_required_mask 0,7770840938859397120
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->get_sgtable 0,1322759480623644672
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->map_phys 0,2506261230157742080,4169194063996235776,4848421345171935232,6326163439792029696
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->map_sg 0,2118452656510775296,2518538481676259328,5872201013595766784,6630017431831871488
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->max_mapping_size 0,8830639662091943936
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->mmap 0,5761417605877342208,7694740394750603264
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->sync_sg_for_cpu 0,4862850025765572608
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->sync_sg_for_device 0,3732476178258022400
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->sync_single_for_cpu 0,1155325867376779264
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->sync_single_for_device 0,8781567156597239808
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->unmap_phys 0,3634718672199266304,5690836758666383360,6257189515678003200,7756707427785986048
PARAM_VALUE 0 lport->host->shost_gendev.dma_ops->unmap_sg 0,1256335292805263360,8472845699660435456,8676762248147066880,8920167536469053440
PARAM_VALUE 0 lport->host->shost_gendev.kobj.parent->sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 lport->host->shost_gendev.kobj.sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 lport->host->shost_gendev.power.wakeirq->status 0-4294967295
PARAM_VALUE 1 fp 4096-ptr_max
PARAM_VALUE 1 fp->skb.data 4096-ptr_max
PARAM_VALUE 1 fp->skb.data->fh_cs_ctl 0
PARAM_VALUE 1 fp->skb.data->fh_d_id s64min-(-4096),4096-s64max
PARAM_VALUE 1 fp->skb.data->fh_df_ctl 0
PARAM_VALUE 1 fp->skb.data->fh_f_ctl 4096-ptr_max
PARAM_VALUE 1 fp->skb.data->fh_parm_offset 0
PARAM_VALUE 1 fp->skb.data->fh_r_ctl 2,34
PARAM_VALUE 1 fp->skb.data->fh_s_id 4096-ptr_max
PARAM_VALUE 1 fp->skb.data->fh_type 1,32
PARAM_VALUE 3 destructor 0
BUF_SIZE 0 lport (-1)-u16max
BUF_SIZE 0 lport (-1)-u16max
BUF_SIZE 0 lport->host->hostt (-1),360
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 1 fp 0-s32max
BUF_SIZE 4 arg (-1)-u16max
BUF_SIZE 4 arg (-1)-u16max
CAPPED_DATA 0 lport 1
DATA_SOURCE 0 lport $0
DATA_SOURCE 1 fp $2
DATA_SOURCE 2 resp $4
DATA_SOURCE 4 arg $5
DATA_SOURCE 5 timer_msec $6
PARAM_COMPARE 1 fp->skb.data->fh_s_id == $0->port_id
TASK_NOT_RUNNING
USER_DATA 0 lport->e_d_tov 1-u32max[c]
USER_DATA 0 lport->npiv_enabled 0-1
USER_DATA 0 lport->r_a_tov 0-u32max[c]
USER_DATA 5 timer_msec 0-u32max[c]
NO_OVERFLOW_SIMPLE 0 lport->host->pseudo_sdev->request_queue->async_depth
NO_OVERFLOW_SIMPLE 0 lport->host->pseudo_sdev->request_queue->limits.io_min
NO_OVERFLOW_SIMPLE 0 lport->host->pseudo_sdev->request_queue->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 lport->host->pseudo_sdev->request_queue->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 lport->host->pseudo_sdev->request_queue->limits.physical_block_size
NO_OVERFLOW_SIMPLE 0 lport->host->pseudo_sdev->request_queue->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 lport->host->pseudo_sdev->request_queue->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 lport->host->pseudo_sdev->request_queue->nr_requests
NO_OVERFLOW_SIMPLE 0 lport->host->shost_dev.physical_location
NO_OVERFLOW_SIMPLE 0 lport->host->shost_gendev.p
NO_OVERFLOW_SIMPLE 0 lport->host->shost_gendev.physical_location
HALF_LOCKED2 &disc->disc_mutex
HALF_LOCKED2 &fsp->scsi_pkt_lock
HALF_LOCKED2 &lport->lp_mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &rdata->rp_mutex
HALF_LOCKED2 bh
HALF_LOCKED2 0 lport->host->host_lock
HALF_LOCKED2 0 &lport->lp_mutex