Defined in 9 files as a function:

Referenced in 11 files:

Smatch caller information:

drivers/usb/gadget/function/f_mass_storage.c do_scsi_command() -> do_read()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->bad_lun_okay 0
PARAM_VALUE 0 qp->cmnd 4096-ptr_max
PARAM_VALUE 0 qp->cmnd_size 0-s32max
PARAM_VALUE 0 qp->curlun 0,4096-ptr_max
PARAM_VALUE 0 qp->curlun->filp->f_mapping->host->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 qp->curlun->info_valid 0
PARAM_VALUE 0 qp->curlun->sense_data 0
PARAM_VALUE 0 qp->curlun->sense_data_info 0
PARAM_VALUE 0 qp->filesem.dep_map->name 0-255
PARAM_VALUE 0 qp->filesem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 qp->filesem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 qp->filesem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 qp->filesem.first_waiter->type 0-1
PARAM_VALUE 0 qp->filesem.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 qp->filesem.wait_lock.owner (-1)
PARAM_VALUE 0 qp->filesem.wait_lock.owner_cpu u32max
PARAM_VALUE 0 qp->io_wait.head.prev->next 4096-ptr_max
PARAM_VALUE 0 qp->io_wait.head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 qp->next_buffhd_to_drain 1-u64max
PARAM_VALUE 0 qp->next_buffhd_to_fill 1-u64max
PARAM_VALUE 0 qp->next_buffhd_to_fill->state 0-s32max
PARAM_VALUE 0 qp->running 1
PARAM_VALUE 0 qp->short_packet_received 0
PARAM_VALUE 0 qp->state 0
BUF_SIZE 0 qp 128
BUF_SIZE 0 qp 128
CAPPED_DATA 0 qp->cmnd_size 1
CAPPED_DATA 0 &qp->filesem 1
DATA_SOURCE 0 qp $0
LOCK2 0 &qp->filesem
TYPE_LOCK (struct fsg_common)->filesem

drivers/usb/gadget/function/f_mass_storage.c do_scsi_command() -> do_read()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->bad_lun_okay 0
PARAM_VALUE 0 qp->cmnd 4096-ptr_max
PARAM_VALUE 0 qp->cmnd_size 0-s32max
PARAM_VALUE 0 qp->curlun 0,4096-ptr_max
PARAM_VALUE 0 qp->curlun->filp->f_mapping->host->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 qp->curlun->info_valid 0
PARAM_VALUE 0 qp->curlun->sense_data 0
PARAM_VALUE 0 qp->curlun->sense_data_info 0
PARAM_VALUE 0 qp->filesem.dep_map->name 0-255
PARAM_VALUE 0 qp->filesem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 qp->filesem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 qp->filesem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 qp->filesem.first_waiter->type 0-1
PARAM_VALUE 0 qp->filesem.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 qp->filesem.wait_lock.owner (-1)
PARAM_VALUE 0 qp->filesem.wait_lock.owner_cpu u32max
PARAM_VALUE 0 qp->io_wait.head.prev->next 4096-ptr_max
PARAM_VALUE 0 qp->io_wait.head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 qp->next_buffhd_to_drain 1-u64max
PARAM_VALUE 0 qp->next_buffhd_to_fill 1-u64max
PARAM_VALUE 0 qp->next_buffhd_to_fill->state 0-s32max
PARAM_VALUE 0 qp->running 1
PARAM_VALUE 0 qp->short_packet_received 0
PARAM_VALUE 0 qp->state 0
BUF_SIZE 0 qp 128
BUF_SIZE 0 qp 128
CAPPED_DATA 0 qp->cmnd_size 1
CAPPED_DATA 0 &qp->filesem 1
DATA_SOURCE 0 qp $0
LOCK2 0 &qp->filesem
TYPE_LOCK (struct fsg_common)->filesem

drivers/usb/gadget/function/f_mass_storage.c do_scsi_command() -> do_read()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->bad_lun_okay 0
PARAM_VALUE 0 qp->cmnd 4096-ptr_max
PARAM_VALUE 0 qp->cmnd_size 0-s32max
PARAM_VALUE 0 qp->curlun 0,4096-ptr_max
PARAM_VALUE 0 qp->curlun->filp->f_mapping->host->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 qp->curlun->info_valid 0
PARAM_VALUE 0 qp->curlun->sense_data 0
PARAM_VALUE 0 qp->curlun->sense_data_info 0
PARAM_VALUE 0 qp->filesem.dep_map->name 0-255
PARAM_VALUE 0 qp->filesem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 qp->filesem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 qp->filesem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 qp->filesem.first_waiter->type 0-1
PARAM_VALUE 0 qp->filesem.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 qp->filesem.wait_lock.owner (-1)
PARAM_VALUE 0 qp->filesem.wait_lock.owner_cpu u32max
PARAM_VALUE 0 qp->io_wait.head.prev->next 4096-ptr_max
PARAM_VALUE 0 qp->io_wait.head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 qp->next_buffhd_to_drain 1-u64max
PARAM_VALUE 0 qp->next_buffhd_to_fill 1-u64max
PARAM_VALUE 0 qp->next_buffhd_to_fill->state 0-s32max
PARAM_VALUE 0 qp->running 1
PARAM_VALUE 0 qp->short_packet_received 0
PARAM_VALUE 0 qp->state 0
BUF_SIZE 0 qp 128
BUF_SIZE 0 qp 128
CAPPED_DATA 0 qp->cmnd_size 1
CAPPED_DATA 0 &qp->filesem 1
DATA_SOURCE 0 qp $0
LOCK2 0 &qp->filesem
TYPE_LOCK (struct fsg_common)->filesem

drivers/usb/gadget/function/f_mass_storage.c do_scsi_command() -> do_read()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->bad_lun_okay 0
PARAM_VALUE 0 qp->cmnd 4096-ptr_max
PARAM_VALUE 0 qp->cmnd_size 0-s32max
PARAM_VALUE 0 qp->curlun 0,4096-ptr_max
PARAM_VALUE 0 qp->curlun->filp->f_mapping->host->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 qp->curlun->info_valid 0
PARAM_VALUE 0 qp->curlun->sense_data 0
PARAM_VALUE 0 qp->curlun->sense_data_info 0
PARAM_VALUE 0 qp->filesem.dep_map->name 0-255
PARAM_VALUE 0 qp->filesem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 qp->filesem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 qp->filesem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 qp->filesem.first_waiter->type 0-1
PARAM_VALUE 0 qp->filesem.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 qp->filesem.wait_lock.owner (-1)
PARAM_VALUE 0 qp->filesem.wait_lock.owner_cpu u32max
PARAM_VALUE 0 qp->io_wait.head.prev->next 4096-ptr_max
PARAM_VALUE 0 qp->io_wait.head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 qp->next_buffhd_to_drain 1-u64max
PARAM_VALUE 0 qp->next_buffhd_to_fill 1-u64max
PARAM_VALUE 0 qp->next_buffhd_to_fill->state 0-s32max
PARAM_VALUE 0 qp->running 1
PARAM_VALUE 0 qp->short_packet_received 0
PARAM_VALUE 0 qp->state 0
BUF_SIZE 0 qp 128
BUF_SIZE 0 qp 128
CAPPED_DATA 0 qp->cmnd_size 1
CAPPED_DATA 0 &qp->filesem 1
DATA_SOURCE 0 qp $0
LOCK2 0 &qp->filesem
TYPE_LOCK (struct fsg_common)->filesem

drivers/infiniband/sw/rxe/rxe_comp.c rxe_completer() -> do_read()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->attr.qp_state 1-5,7-u32max
PARAM_VALUE 0 qp->attr.sq_draining 0
PARAM_VALUE 0 qp->comp.opcode s32min-(-2),0-s32max
PARAM_VALUE 0 qp->comp.retry_cnt 0-255
PARAM_VALUE 0 qp->comp.rnr_retry 0-255
PARAM_VALUE 0 qp->comp.started_retry 0
PARAM_VALUE 0 qp->comp.timeout 0
PARAM_VALUE 0 qp->comp.timeout_retry 0-1
PARAM_VALUE 0 qp->elem.ref_cnt.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 qp->ibqp.qp_context->device->qp_open_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 qp->ibqp.qp_context->first_error s32min-(-1),1-s32max
PARAM_VALUE 0 qp->ibqp.qp_context->ib_cm.cm_id->lap_state 1
PARAM_VALUE 0 qp->ibqp.qp_context->ib_cm.cm_id->state 0-5,7-8,10-4294967295
PARAM_VALUE 0 qp->ibqp.qp_context->idle.keepalive 0
PARAM_VALUE 0 qp->ibqp.qp_context->status 0-4294967295
PARAM_VALUE 0 qp->need_req_skb 0-1
PARAM_VALUE 0 qp->recv_task.state s32min-(-1),1-s32max
PARAM_VALUE 0 qp->recv_task.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 qp->req.again 0
PARAM_VALUE 0 qp->req.need_rd_atomic 0-1
PARAM_VALUE 0 qp->req.need_retry 0
PARAM_VALUE 0 qp->req.noack_pkts 0
PARAM_VALUE 0 qp->req.opcode (-22),(-1)-12,19-20,22-23,28-29,32-43,100-101
PARAM_VALUE 0 qp->req.wait_fence 0
PARAM_VALUE 0 qp->scq->cq_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi->thread->delays->lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->delays->blkio_count 0-4294967295
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->delays->blkio_delay_max 0-s64max
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->delays->blkio_delay_max_ts.tv_nsec 0-999999999
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->delays->blkio_delay_min 0-s64max
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->delays->lock.owner (-1)
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->delays->lock.owner_cpu 4294967295
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->on_rq 0-1,3-255
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->pushable_dl_tasks.__rb_parent_color 1
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->rseq.event.ids_changed 1
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->sched_migrated 1
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->se.avg.util_avg 0-4294967295
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->se.cfs_rq->removed.lock.owner (-1)
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->se.cfs_rq->removed.lock.owner_cpu 4294967295
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->se.cfs_rq->rq->curr->mm->sc_stat.cpu (-1)
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->se.cfs_rq->rq->curr->pref_llc_queued 0-1
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->se.cfs_rq->rq->donor->__state 0,512
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->se.cfs_rq->rq->donor->sched_migrated 1
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->se.cfs_rq->rq->donor->wake_cpu 0-s32max
PARAM_VALUE 0 qp->scq->ibcq.cq_context->recv_napi.thread->wake_cpu 0-s32max
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi->thread->delays->lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->delays->blkio_count 0-4294967295
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->delays->blkio_delay_max 0-s64max
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->delays->blkio_delay_max_ts.tv_nsec 0-999999999
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->delays->blkio_delay_min 0-s64max
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->delays->lock.owner (-1)
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->delays->lock.owner_cpu 4294967295
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->on_rq 0-1,3-255
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->pushable_dl_tasks.__rb_parent_color 1
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->rseq.event.ids_changed 1
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->sched_migrated 1
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->se.avg.util_avg 0-4294967295
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->se.cfs_rq->removed.lock.owner (-1)
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->se.cfs_rq->removed.lock.owner_cpu 4294967295
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->se.cfs_rq->rq->curr->mm->sc_stat.cpu (-1)
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->se.cfs_rq->rq->curr->pref_llc_queued 0-1
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->se.cfs_rq->rq->donor->__state 0,512
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->se.cfs_rq->rq->donor->sched_migrated 1
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->se.cfs_rq->rq->donor->wake_cpu 0-s32max
PARAM_VALUE 0 qp->scq->ibcq.cq_context->send_napi.thread->wake_cpu 0-s32max
PARAM_VALUE 0 qp->scq->ibcq.iop.list.next 4096-ptr_max
PARAM_VALUE 0 qp->send_task.state s32min-(-1),1-s32max
PARAM_VALUE 0 qp->send_task.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 qp->state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 qp->valid 1-u32max
PARAM_VALUE 1 pkt->hdr 4096-ptr_max
PARAM_VALUE 1 pkt->opcode 13-16
PARAM_VALUE 2 wqe 0
PARAM_VALUE 2 wqe->has_rd_atomic 0
PARAM_VALUE 2 wqe->wr.opcode 4,11,14
BUF_SIZE 1 pkt 0
BUF_SIZE 2 wqe 0
DATA_SOURCE 0 qp $0
FUZZY_MAX 0 qp->comp.timeout_retry 1
BIT_INFO 1 pkt 0x0,0x0
BIT_INFO 2 wqe->state 0x0,0xffffffff
BIT_INFO 2 wqe->status 0x0,0xffffffff
HARD_MAX 0 qp->comp.timeout_retry 1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 qp->attr.cur_qp_state 0-6
USER_DATA 0 qp->attr.qp_state 1-5

drivers/mmc/host/cavium.c cvm_mmc_interrupt() -> do_read()

Type Parameter Key Value
PARAM_VALUE 0 qp 4096-ptr_max
PARAM_VALUE 0 qp->current_req 4096-ptr_max
PARAM_VALUE 0 qp->current_req->data 1-u64max
PARAM_VALUE 0 qp->dma_active 0
PARAM_VALUE 1 pkt 4096-ptr_max
PARAM_VALUE 1 pkt->data 1-u64max
PARAM_VALUE 2 wqe 0,8388608
DATA_SOURCE 0 qp $1
BIT_INFO 2 wqe 0x0,0x800000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 wqe 0,8388608
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
HALF_LOCKED2 0 &qp->irq_handler_lock

drivers/mtd/tests/stresstest.c do_operation() -> do_read()

Type Parameter Key Value