Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/ufs/core/ufshcd.c ufs_get_device_desc() -> ufshcd_read_desc_param()

Type Parameter Key Value
PARAM_VALUE 0 hba 4096-ptr_max
PARAM_VALUE 0 hba->active_uic_cmd->cmd_active 1
PARAM_VALUE 0 hba->active_uic_cmd->done.done 0
PARAM_VALUE 0 hba->active_uic_cmd->done.wait.lock.magic 3735899821
PARAM_VALUE 0 hba->active_uic_cmd->done.wait.lock.owner (-1)
PARAM_VALUE 0 hba->active_uic_cmd->done.wait.lock.owner_cpu u32max
PARAM_VALUE 0 hba->active_uic_cmd->done.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 hba->active_uic_cmd->done.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 hba->caps 16-u32max
PARAM_VALUE 0 hba->clk_gating.gate_work->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.next 1-u64max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.next->next 1-u64max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.prev 1-u64max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.prev->next 1-u64max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.prev->prev 1-u64max
PARAM_VALUE 0 hba->clk_gating.state 1-2
PARAM_VALUE 0 hba->clk_gating.ungate_work.lockdep_map->name 0-255
PARAM_VALUE 0 hba->clk_scaling_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->curr_dev_pwr_mode 1
PARAM_VALUE 0 hba->dev 0,4096-ptr_max
PARAM_VALUE 0 hba->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 hba->dev->class 0,4096-ptr_max
PARAM_VALUE 0 hba->dev->driver 0,4096-ptr_max
PARAM_VALUE 0 hba->dev_cmd.lock.dep_map->name 0-255
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hba->dev_cmd.query.descriptor 0
PARAM_VALUE 0 hba->dev_cmd.type 1
PARAM_VALUE 0 hba->dev_info.device_id 0
PARAM_VALUE 0 hba->dev_info.max_lu_supported 8,32
PARAM_VALUE 0 hba->dev_info.model 0
PARAM_VALUE 0 hba->dev_info.rtc_time_baseline 0
PARAM_VALUE 0 hba->dev_info.wb_buf_flush_enabled 0
PARAM_VALUE 0 hba->dev_info.wb_enabled 0
PARAM_VALUE 0 hba->eh_work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 hba->host 4096-ptr_max
PARAM_VALUE 0 hba->host->pseudo_sdev 4096-ptr_max
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->elevator->type->elevator_owner 0
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->q_usage_counter.percpu_count_ptr 1-u64max
PARAM_VALUE 0 hba->host_sem.first_waiter->list.next 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->list.prev 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->list.prev->next 5349227543279349760
PARAM_VALUE 0 hba->host_sem.lock.dep_map->name 0-255
PARAM_VALUE 0 hba->host_sem.lock.owner (-1)
PARAM_VALUE 0 hba->host_sem.lock.owner_cpu u32max
PARAM_VALUE 0 hba->host_sem.lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 0 hba->pm_op_in_progress 0
PARAM_VALUE 0 hba->quirks 524288-u32max
PARAM_VALUE 0 hba->req_abort_count 0
PARAM_VALUE 0 hba->ufs_stats.hibern8_exit_cnt 0
PARAM_VALUE 0 hba->ufs_stats.last_hibern8_exit_tstamp 0
PARAM_VALUE 0 hba->ufshcd_state 0,2-4
PARAM_VALUE 0 hba->uic_async_done 0
PARAM_VALUE 0 hba->uic_cmd_mutex->first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 hba->uic_link_state 1
PARAM_VALUE 0 hba->vops 0,4096-ptr_max
PARAM_VALUE 1 desc_id 0
PARAM_VALUE 2 desc_index 0
PARAM_VALUE 3 param_offset 0
PARAM_VALUE 4 param_read_buf 4096-ptr_max
PARAM_VALUE 5 param_size 255
BUF_SIZE 4 param_read_buf 255
BUF_SIZE 4 param_read_buf 255
DATA_SOURCE 0 hba $0
DATA_SOURCE 4 param_read_buf r _kzalloc_noprof
BIT_INFO 0 hba->quirks 0x0,0xfffeffff
RX_PATH
NO_OVERFLOW_SIMPLE 0 hba->dev_info.wb_buf_flush_enabled
NO_OVERFLOW_SIMPLE 0 hba->dev_info.wb_enabled
LOCK2 0 &hba->host_sem
TYPE_LOCK (struct ufs_hba)->host_sem

drivers/ufs/core/ufshcd.c ufshcd_device_geo_params_init() -> ufshcd_read_desc_param()

Type Parameter Key Value
PARAM_VALUE 0 hba 4096-ptr_max
PARAM_VALUE 0 hba->active_uic_cmd->cmd_active 1
PARAM_VALUE 0 hba->active_uic_cmd->done.done 0
PARAM_VALUE 0 hba->active_uic_cmd->done.wait.lock.magic 3735899821
PARAM_VALUE 0 hba->active_uic_cmd->done.wait.lock.owner (-1)
PARAM_VALUE 0 hba->active_uic_cmd->done.wait.lock.owner_cpu u32max
PARAM_VALUE 0 hba->active_uic_cmd->done.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 hba->active_uic_cmd->done.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 hba->caps 16-u32max
PARAM_VALUE 0 hba->clk_gating.gate_work->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.next->next 1-u64max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.prev->next 1-u64max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.prev->prev 1-u64max
PARAM_VALUE 0 hba->clk_gating.state 2
PARAM_VALUE 0 hba->clk_gating.ungate_work.lockdep_map->name 0-255
PARAM_VALUE 0 hba->clk_scaling_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->curr_dev_pwr_mode 1
PARAM_VALUE 0 hba->dev 0,4096-ptr_max
PARAM_VALUE 0 hba->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 hba->dev->class 0,4096-ptr_max
PARAM_VALUE 0 hba->dev->driver 0,4096-ptr_max
PARAM_VALUE 0 hba->dev_cmd.lock.dep_map->name 0-255
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hba->dev_cmd.type 1
PARAM_VALUE 0 hba->dev_info.device_id 0
PARAM_VALUE 0 hba->dev_info.model 0
PARAM_VALUE 0 hba->dev_info.rtc_time_baseline 0
PARAM_VALUE 0 hba->dev_info.wb_buf_flush_enabled 0
PARAM_VALUE 0 hba->dev_info.wb_enabled 0
PARAM_VALUE 0 hba->eh_work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 hba->host 4096-ptr_max
PARAM_VALUE 0 hba->host->pseudo_sdev 4096-ptr_max
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->elevator->type->elevator_owner 0
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->q_usage_counter.percpu_count_ptr 1-u64max
PARAM_VALUE 0 hba->host_sem.first_waiter->list.next 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->list.prev 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->list.prev->next 5349227543279349760
PARAM_VALUE 0 hba->host_sem.lock.dep_map->name 0-255
PARAM_VALUE 0 hba->host_sem.lock.owner (-1)
PARAM_VALUE 0 hba->host_sem.lock.owner_cpu u32max
PARAM_VALUE 0 hba->host_sem.lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 0 hba->pm_op_in_progress 0
PARAM_VALUE 0 hba->quirks 524288-u32max
PARAM_VALUE 0 hba->req_abort_count 0
PARAM_VALUE 0 hba->ufs_stats.hibern8_exit_cnt 0
PARAM_VALUE 0 hba->ufshcd_state 0,2-4
PARAM_VALUE 0 hba->uic_async_done 0
PARAM_VALUE 0 hba->uic_cmd_mutex->first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 hba->uic_link_state 1
PARAM_VALUE 0 hba->vops 0,4096-ptr_max
PARAM_VALUE 1 desc_id 7
PARAM_VALUE 2 desc_index 0
PARAM_VALUE 3 param_offset 0
PARAM_VALUE 4 param_read_buf 4096-ptr_max
PARAM_VALUE 5 param_size 255
BUF_SIZE 4 param_read_buf 255
BUF_SIZE 4 param_read_buf 255
DATA_SOURCE 0 hba $0
DATA_SOURCE 4 param_read_buf r _kzalloc_noprof
BIT_INFO 0 hba->quirks 0x0,0xfffeffff
RX_PATH
NO_OVERFLOW_SIMPLE 0 hba->dev_info.wb_buf_flush_enabled
NO_OVERFLOW_SIMPLE 0 hba->dev_info.wb_enabled
LOCK2 0 &hba->host_sem
TYPE_LOCK (struct ufs_hba)->host_sem

drivers/ufs/core/ufshcd.c ufshcd_read_string_desc() -> ufshcd_read_desc_param()

Type Parameter Key Value
PARAM_VALUE 0 hba 4096-ptr_max
PARAM_VALUE 0 hba->clk_gating.gate_work->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.next->next 1-u64max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.prev->next 1-u64max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.prev->prev 1-u64max
PARAM_VALUE 0 hba->clk_gating.state 1-2
PARAM_VALUE 0 hba->clk_scaling_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->dev_cmd.lock.dep_map->name 0-255
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hba->dev_cmd.query.descriptor 0
PARAM_VALUE 0 hba->dev_cmd.type 1
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hba->host_sem.first_waiter->list.next 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->list.prev 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->list.prev->next 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->up 0-1
PARAM_VALUE 0 hba->host_sem.lock.owner (-1)
PARAM_VALUE 0 hba->host_sem.lock.owner_cpu u32max
PARAM_VALUE 0 hba->ufs_device_wlun->sdev_gendev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hba->ufs_stats.last_hibern8_exit_tstamp 0
PARAM_VALUE 0 hba->vps->wb_flush_threshold 1-10
PARAM_VALUE 1 desc_id 5
PARAM_VALUE 3 param_offset 0
PARAM_VALUE 4 param_read_buf 4096-ptr_max
PARAM_VALUE 5 param_size 255
BUF_SIZE 0 hba s32min-(-1),1-s32max
BUF_SIZE 0 hba s32min-(-1),1-s32max
BUF_SIZE 4 param_read_buf 255
BUF_SIZE 4 param_read_buf 255
DATA_SOURCE 0 hba $0
DATA_SOURCE 2 desc_index $1
DATA_SOURCE 4 param_read_buf r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
UNITS 0 hba unit_byte
LOCK2 0 &hba->host_sem
HALF_LOCKED2 &of->mutex
TYPE_LOCK (struct ufs_hba)->host_sem

drivers/ufs/core/ufshcd.c ufshcd_read_unit_desc_param() -> ufshcd_read_desc_param()

Type Parameter Key Value
PARAM_VALUE 0 hba 4096-ptr_max
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->dev_info.max_lu_supported 1-255
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hba->vps->wb_flush_threshold 1-10
PARAM_VALUE 1 desc_id 2
PARAM_VALUE 2 desc_index 0-254
PARAM_VALUE 3 param_offset 0,41
PARAM_VALUE 4 param_read_buf 4096-ptr_max
PARAM_VALUE 5 param_size 4,255
BUF_SIZE 4 param_read_buf 4,255
BUF_SIZE 4 param_read_buf 4,255
CAPPED_DATA 0 hba->dev_info.max_lu_supported 1
CAPPED_DATA 2 desc_index 1
DATA_SOURCE 0 hba $0
DATA_SOURCE 2 desc_index $1
DATA_SOURCE 3 param_offset $2
DATA_SOURCE 4 param_read_buf $3
DATA_SOURCE 5 param_size $4
FUZZY_MAX 2 desc_index 7
PARAM_COMPARE 4 param_read_buf > $5
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 desc_index 0-254[c]
UNITS 5 param_size unit_byte
BYTE_COUNT 4 ==param_read_buf5 8050
HALF_LOCKED2 &shost->scan_mutex
HALF_LOCKED2 0 &hba->host_sem

drivers/ufs/core/ufshcd.c ufshcd_set_active_icc_lvl() -> ufshcd_read_desc_param()

Type Parameter Key Value
PARAM_VALUE 0 hba 4096-ptr_max
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hba->host_sem.first_waiter->up 0-1
PARAM_VALUE 1 desc_id 8
PARAM_VALUE 2 desc_index 0
PARAM_VALUE 3 param_offset 0
PARAM_VALUE 4 param_read_buf 4096-ptr_max
PARAM_VALUE 5 param_size 255
BUF_SIZE 4 param_read_buf 255
BUF_SIZE 4 param_read_buf 255
DATA_SOURCE 0 hba $0
DATA_SOURCE 4 param_read_buf r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &hba->host_sem

drivers/ufs/core/ufs-sysfs.c ufs_sysfs_read_desc_param() -> ufshcd_read_desc_param()

Type Parameter Key Value
PARAM_VALUE 0 hba 4096-ptr_max
PARAM_VALUE 0 hba->host_sem.first_waiter->list.next 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->list.prev 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->list.prev->next 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->up 0
PARAM_VALUE 0 hba->host_sem.lock.dep_map->name 0-255
PARAM_VALUE 0 hba->host_sem.lock.owner (-1)
PARAM_VALUE 0 hba->host_sem.lock.owner_cpu u32max
PARAM_VALUE 0 hba->shutting_down 0
PARAM_VALUE 0 hba->ufs_device_wlun 4096-ptr_max
PARAM_VALUE 0 hba->ufs_device_wlun->sdev_gendev.power.request 0-4
PARAM_VALUE 0 hba->ufs_device_wlun->sdev_gendev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 hba->ufs_device_wlun->sdev_gendev.power.wakeirq->status 0-4294967295
PARAM_VALUE 1 desc_id 0,2,4,7-9
PARAM_VALUE 2 desc_index 0-254
PARAM_VALUE 3 param_offset 2-34,36-38,40-42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78-80,82-86,88,90,92,94,96
PARAM_VALUE 4 param_read_buf 4096-ptr_max
PARAM_VALUE 5 param_size 1-2,4,8
BUF_SIZE 0 hba s32min-(-1),1-s32max
BUF_SIZE 0 hba s32min-(-1),1-s32max
BUF_SIZE 4 param_read_buf 8
CAPPED_DATA 2 desc_index 1
DATA_SOURCE 0 hba $0
DATA_SOURCE 1 desc_id $1
DATA_SOURCE 2 desc_index $2
DATA_SOURCE 3 param_offset $3
DATA_SOURCE 5 param_size $5
HARD_MAX 1 desc_id 9
HARD_MAX 3 param_offset 96
HARD_MAX 5 param_size 8
RX_PATH
TASK_NOT_RUNNING
UNITS 0 hba unit_byte
LOCK2 &of->mutex
LOCK2 0 &hba->host_sem
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex
TYPE_LOCK (struct ufs_hba)->host_sem