Documented in 1 files:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/scsi/scsi_sysfs.c __scsi_remove_device() -> scsi_device_is_pseudo_dev()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
BUF_SIZE 0 sdev (-1),4232-s32max
BUF_SIZE 0 sdev (-1),4232-s32max
CAPPED_DATA 0 sdev->request_queue->nr_hw_queues 1
CAPPED_DATA 0 &sdev->requeue_work 1
CAPPED_DATA 0 &sdev->sdev_dev 1
CAPPED_DATA 0 &sdev->state_mutex 1
DATA_SOURCE 0 sdev $0
PARAM_COMPARE 0 sdev->request_queue->nr_hw_queues != $0->request_queue->tag_set->nr_hw_queues
NOSPEC 0 sdev->channel
NOSPEC 0 sdev->id
NOSPEC 0 sdev->lun
NOSPEC 0 sdev->max_queue_depth
NOSPEC 0 sdev->sdev_target->channel
NOSPEC 0 sdev->sdev_target->id
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 sdev->budget_map.depth 1-4095[c]
USER_DATA 0 sdev->channel 1-s32max[c]
USER_DATA 0 sdev->id 0-s32max[c]
USER_DATA 0 sdev->lun 0-18446744073709551614[c]
USER_DATA 0 sdev->max_queue_depth 1-4095[c]
USER_DATA 0 sdev->queue_depth 1-4095[c]
USER_DATA 0 sdev->request_queue->limits.atomic_write_max_sectors 0-8388607[c]
USER_DATA 0 sdev->request_queue->limits.discard_granularity 512-u32max[c]
USER_DATA 0 sdev->request_queue->limits.io_min 512-u32max[c]
USER_DATA 0 sdev->request_queue->limits.logical_block_size 512-65536[c]
USER_DATA 0 sdev->request_queue->limits.physical_block_size 512-u32max[c]
USER_DATA 0 sdev->request_queue->queue_depth 1-4095[c]
USER_DATA 0 sdev->sdev_target->channel 1-s32max[c]
USER_DATA 0 sdev->sdev_target->id 0-s32max[c]
NO_OVERFLOW_SIMPLE 0 sdev->inquiry_len
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->async_depth
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->nr_requests
LOCK2 &shost->scan_mutex
TYPE_LOCK (struct Scsi_Host)->scan_mutex

drivers/scsi/scsi_sysfs.c scsi_sysfs_add_sdev() -> scsi_device_is_pseudo_dev()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
BUF_SIZE 0 sdev (-1),4232-s32max
BUF_SIZE 0 sdev (-1),4232-s32max
BUF_SIZE 0 sdev->inquiry (-1),36-255
DATA_SOURCE 0 sdev $0
NOSPEC 0 sdev->sdev_target->channel
NOSPEC 0 sdev->sdev_target->id
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 sdev->budget_map.depth 1-4095[c]
USER_DATA 0 sdev->request_queue->limits.alignment_offset 0-u32max[c][u]
USER_DATA 0 sdev->request_queue->limits.atomic_write_max_sectors 0-8388607[c]
USER_DATA 0 sdev->request_queue->limits.discard_granularity 512-u32max[c]
USER_DATA 0 sdev->request_queue->limits.io_min 512-u32max[c]
USER_DATA 0 sdev->request_queue->limits.logical_block_size 512-65536[c]
USER_DATA 0 sdev->request_queue->limits.max_hw_wzeroes_unmap_sectors 0-u32max[c]
USER_DATA 0 sdev->request_queue->limits.max_sectors 0-s32max[c]
USER_DATA 0 sdev->request_queue->limits.max_write_zeroes_sectors 0-u32max[c]
USER_DATA 0 sdev->request_queue->limits.max_wzeroes_unmap_sectors 0-s32max[c]
USER_DATA 0 sdev->request_queue->limits.max_zone_append_sectors 0-s32max[c]
USER_DATA 0 sdev->request_queue->limits.physical_block_size 512-u32max[c]
USER_DATA 0 sdev->request_queue->queue_depth 1-4095[c]
USER_DATA 0 sdev->sdev_target->channel 1-s32max[c]
USER_DATA 0 sdev->sdev_target->id 0-s32max[c]
NO_OVERFLOW_SIMPLE 0 sdev->budget_map.depth
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->async_depth
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->nr_requests
LOCK2 &shost->scan_mutex
TYPE_LOCK (struct Scsi_Host)->scan_mutex

drivers/scsi/scsi_scan.c scsi_add_lun() -> scsi_device_is_pseudo_dev()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
BUF_SIZE 0 sdev (-1),4232-s32max
BUF_SIZE 0 sdev (-1),4232-s32max
BUF_SIZE 0 sdev->inquiry 36-255
CAPPED_DATA 0 &sdev->state_mutex 1
DATA_SOURCE 0 sdev $0
NOSPEC 0 sdev->sdev_target->channel
NOSPEC 0 sdev->sdev_target->id
TERMINATED 0 sdev->rev 1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 sdev->request_queue->queue_depth 1-4095[c]
USER_DATA 0 sdev->sdev_target->channel 1-s32max[c]
USER_DATA 0 sdev->sdev_target->id 0-s32max[c]
NO_OVERFLOW_SIMPLE 0 sdev->inquiry_len
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->async_depth
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->nr_requests
LOCK2 &shost->scan_mutex
TYPE_LOCK (struct Scsi_Host)->scan_mutex

drivers/scsi/scsi_scan.c scsi_alloc_sdev() -> scsi_device_is_pseudo_dev()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
BUF_SIZE 0 sdev 4232-2147487879
BUF_SIZE 0 sdev 4232-2147487879
CAPPED_DATA 0 sdev->host->tag_set.nr_hw_queues 1
CAPPED_DATA 0 sdev->request_queue->limits.max_hw_wzeroes_unmap_sectors 1
CAPPED_DATA 0 &sdev->host->tag_set 1
DATA_SOURCE 0 sdev r _kzalloc_noprof
NOSPEC 0 sdev->channel
NOSPEC 0 sdev->id
NOSPEC 0 sdev->lun
NOSPEC 0 sdev->sdev_target->channel
NOSPEC 0 sdev->sdev_target->id
MEM_ZERO 0 &sdev->sdev_dev.power.suspend_timer
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 sdev->channel 1-s32max[c]
USER_DATA 0 sdev->id 0-s32max[c]
USER_DATA 0 sdev->lun 0-18446744073709551614[c]
USER_DATA 0 sdev->sdev_target->channel 1-s32max[c]
USER_DATA 0 sdev->sdev_target->id 0-s32max[c]
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->async_depth
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->nr_requests
HALF_LOCKED2 &shost->scan_mutex
HALF_LOCKED2 _T->lock

drivers/scsi/scsi_scan.c scsi_forget_host() -> scsi_device_is_pseudo_dev()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
CAPPED_DATA 0 &sdev->siblings 1
PREEMPT_ADD <- disables preempt
LOCK2 &shost->scan_mutex
LOCK2 flags
LOCK2 shost->host_lock
TYPE_LOCK (struct Scsi_Host)->scan_mutex

drivers/scsi/scsi_scan.c scsi_probe_and_add_lun() -> scsi_device_is_pseudo_dev()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
BUF_SIZE 0 sdev (-1),4232-s32max
BUF_SIZE 0 sdev (-1),4232-s32max
NOSPEC 0 sdev->channel
NOSPEC 0 sdev->id
NOSPEC 0 sdev->lun
NOSPEC 0 sdev->sdev_target->channel
NOSPEC 0 sdev->sdev_target->id
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 sdev->budget_map.depth 1-4095[c]
USER_DATA 0 sdev->channel 1-s32max[c]
USER_DATA 0 sdev->id 0-s32max[c]
USER_DATA 0 sdev->lun 0-18446744073709551614[c]
USER_DATA 0 sdev->queue_depth 1-4095[c]
USER_DATA 0 sdev->request_queue->queue_depth 1-4095[c]
USER_DATA 0 sdev->sdev_target->channel 1-s32max[c]
USER_DATA 0 sdev->sdev_target->id 0-s32max[c]
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->async_depth
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 sdev->request_queue->nr_requests
LOCK2 &shost->scan_mutex
TYPE_LOCK (struct Scsi_Host)->scan_mutex

drivers/scsi/scsi.c __scsi_iterate_devices() -> scsi_device_is_pseudo_dev()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 shost->host_lock
HALF_LOCKED2 &adapter->dev_topo.sas_dev_lock
HALF_LOCKED2 &adapter->reset_desc.adapter_reset_mutex
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &hba->host_sem
HALF_LOCKED2 &host->add_target_mutex
HALF_LOCKED2 &host->scan_mutex
HALF_LOCKED2 &instance->reset_mutex
HALF_LOCKED2 &ioc->ioctl_cmds.mutex
HALF_LOCKED2 &ioc->reset_in_progress_mutex
HALF_LOCKED2 &ioc->sas_device_info_mutex
HALF_LOCKED2 &ioc->tm_cmds.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &rport->mutex
HALF_LOCKED2 &shost->scan_mutex
HALF_LOCKED2 &sp->mutex
HALF_LOCKED2 flags
HALF_LOCKED2 global &mpctl_mutex
HALF_LOCKED2 global &sdebug_host_list_mutex