Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/scsi/scsi_error.c scsi_eh_bus_device_reset() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 0 scmd 4096-ptr_max
PARAM_VALUE 0 scmd->device 4096-ptr_max
PARAM_VALUE 0 scmd->device->host 4096-ptr_max
PARAM_VALUE 0 scmd->device->host->hostt 4096-ptr_max
PARAM_VALUE 1 done_q 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next->next 4096-ptr_max
CAPPED_DATA 0 scmd->device 1
CAPPED_DATA 0 &scmd->eh_entry 1
DATA_SOURCE 1 done_q $2
NOCHECK_CALL

drivers/scsi/scsi_error.c scsi_eh_bus_reset() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 0 scmd 4096-ptr_max
PARAM_VALUE 0 scmd->device 4096-ptr_max
PARAM_VALUE 0 scmd->device->host 4096-ptr_max
PARAM_VALUE 0 scmd->device->host->hostt 4096-ptr_max
PARAM_VALUE 1 done_q 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next->next 4096-ptr_max
CAPPED_DATA 0 &scmd->eh_entry 1
DATA_SOURCE 1 done_q $2
NOCHECK_CALL

drivers/scsi/scsi_error.c scsi_eh_get_sense() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 0 scmd 4096-ptr_max
PARAM_VALUE 0 scmd->cmd_len 0-255
PARAM_VALUE 0 scmd->device 4096-ptr_max
PARAM_VALUE 0 scmd->device->host->host_lock->rlock.dep_map->name 0-255
PARAM_VALUE 0 scmd->device->host->tag_set.tags_srcu.dep_map->name 0-255
PARAM_VALUE 0 scmd->device->state_mutex.dep_map->name 0-255
PARAM_VALUE 0 scmd->device->state_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 scmd->flags 0,4-s32max
PARAM_VALUE 0 scmd->sdb.length 0,8,18,96
PARAM_VALUE 0 scmd->sdb.table.nents 0-1
PARAM_VALUE 0 scmd->sdb.table.orig_nents 0-1
PARAM_VALUE 0 scmd->sdb.table.sgl 0,4096-ptr_max
PARAM_VALUE 0 scmd->sense_buffer 4096-ptr_max
PARAM_VALUE 0 scmd->submitter 1
PARAM_VALUE 1 done_q 4096-ptr_max
CAPPED_DATA 0 &scmd->eh_entry 1
DATA_SOURCE 1 done_q $1
BIT_INFO 0 scmd->eh_eflags 0x0,0x7ffffffd
MEM_ZERO 0 scmd->sense_buffer
MEM_ZERO 0 &scmd->sdb
NOCHECK_CALL

drivers/scsi/scsi_error.c scsi_eh_host_reset() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 0 scmd 4096-ptr_max
PARAM_VALUE 0 scmd->device->host 4096-ptr_max
PARAM_VALUE 0 scmd->device->host->hostt 4096-ptr_max
PARAM_VALUE 1 done_q 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next->next 4096-ptr_max
CAPPED_DATA 0 &scmd->eh_entry 1
DATA_SOURCE 1 done_q $2
NOCHECK_CALL

drivers/scsi/scsi_error.c scsi_eh_offline_sdevs() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 0 scmd 4096-ptr_max
PARAM_VALUE 0 scmd->device 4096-ptr_max
PARAM_VALUE 0 scmd->device->state_mutex.dep_map->name 0-255
PARAM_VALUE 0 scmd->device->state_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 scmd->device->state_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 scmd->device->state_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 scmd->device->state_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 done_q 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next->next 4096-ptr_max
CAPPED_DATA 0 &scmd->eh_entry 1
DATA_SOURCE 1 done_q $1
NOCHECK_CALL

drivers/scsi/scsi_error.c scsi_eh_stu() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 0 scmd 4096-ptr_max
PARAM_VALUE 0 scmd->device 4096-ptr_max
PARAM_VALUE 0 scmd->device->expecting_cc_ua 0
PARAM_VALUE 0 scmd->device->host->host_lock->rlock.dep_map->name 0-255
PARAM_VALUE 0 scmd->device->host->tag_set.tags_srcu.dep_map->name 0-255
PARAM_VALUE 0 scmd->device->state_mutex.dep_map->name 0-255
PARAM_VALUE 0 scmd->device->state_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 done_q 4096-ptr_max
CAPPED_DATA 0 scmd->device 1
CAPPED_DATA 0 &scmd->eh_entry 1
DATA_SOURCE 1 done_q $2
NOCHECK_CALL

drivers/scsi/scsi_error.c scsi_eh_target_reset() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 0 scmd 4096-ptr_max
PARAM_VALUE 0 scmd->device 4096-ptr_max
PARAM_VALUE 0 scmd->device->host 4096-ptr_max
PARAM_VALUE 0 scmd->device->host->hostt 4096-ptr_max
PARAM_VALUE 0 scmd->device->host->hostt->eh_target_reset_handler 1-u64max
PARAM_VALUE 1 done_q 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next->next 4096-ptr_max
DATA_SOURCE 1 done_q $2
NOCHECK_CALL

drivers/scsi/scsi_error.c scsi_eh_test_devices() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 0 scmd 4096-ptr_max
PARAM_VALUE 0 scmd->device 4096-ptr_max
PARAM_VALUE 1 done_q 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next 4096-ptr_max
PARAM_VALUE 1 done_q->prev->next->next 4096-ptr_max
BUF_SIZE 1 done_q->next (-1),16
CAPPED_DATA 0 scmd->device 1
CAPPED_DATA 0 &scmd->eh_entry 1
DATA_SOURCE 1 done_q $2
NOCHECK_CALL

drivers/ata/libata-eh.c __ata_eh_qc_complete() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 1 done_q 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ap->host->eh_mutex
TYPE_LOCK (struct ata_host)->eh_mutex

drivers/ata/libata-eh.c ata_scsi_cmd_error_handler() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 0 scmd 4096-ptr_max
PARAM_VALUE 1 done_q 4096-ptr_max
CAPPED_DATA 0 &scmd->eh_entry 1
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 ap->lock
LOCK2 flags

drivers/scsi/libsas/sas_scsi_host.c sas_eh_finish_cmd() -> scsi_eh_finish_cmd()

Type Parameter Key Value
PARAM_VALUE 0 scmd 4096-ptr_max
PARAM_VALUE 0 scmd->device 4096-ptr_max
PARAM_VALUE 0 scmd->device->host 4096-ptr_max
PARAM_VALUE 0 scmd->device->sdev_target 4096-ptr_max
PARAM_VALUE 0 scmd->device->sdev_target->hostdata 4096-ptr_max
PARAM_VALUE 0 scmd->host_scribble 0
PARAM_VALUE 1 done_q 4096-ptr_max
DATA_SOURCE 0 scmd $0
NOCHECK_CALL