Documented in 1 files:

Defined in 1 files as a function:

Referenced in 18 files:

Smatch caller information:

drivers/md/md.c mddev_set_logical_block_size() -> queue_limits_start_update()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 0 q->limits.logical_block_size 0-4294967294
CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mddev->reconfig_mutex
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex
TYPE_LOCK (struct mddev)->reconfig_mutex

drivers/md/md.c mddev_stack_new_rdev() -> queue_limits_start_update()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 0 q->mq_kobj->sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 q->tag_set->update_nr_hwq_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 q->tag_set->update_nr_hwq_lock.first_waiter->type 0-1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mddev->reconfig_mutex
HALF_LOCKED2 &mddev->reconfig_mutex
HALF_LOCKED2 &of->mutex

drivers/md/md.c mddev_update_io_opt() -> queue_limits_start_update()

Type Parameter Key Value

drivers/block/drbd/drbd_nl.c drbd_reconsider_queue_parameters() -> queue_limits_start_update()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &adm_ctx->resource->adm_mutex

drivers/scsi/sd.c cache_type_store() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/scsi/sd.c max_write_same_blocks_store() -> queue_limits_start_update()

Type Parameter Key Value
CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/scsi/sd.c provisioning_mode_store() -> queue_limits_start_update()

Type Parameter Key Value
CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

block/blk-sysfs.c queue_attr_store() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/nvme/host/core.c nvme_init_identify() -> queue_limits_start_update()

Type Parameter Key Value
PARAM_VALUE 0 q->dev->power.wakeirq->status 0-4294967295
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 q->async_depth
NO_OVERFLOW_SIMPLE 0 q->nr_requests
NO_OVERFLOW_SIMPLE 0 q->tag_set->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 q->tag_set->queue_depth

drivers/nvme/host/core.c nvme_update_ns_info() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctrl->scan_lock
HALF_LOCKED2 &pool->lock

drivers/nvme/host/core.c nvme_update_ns_info_block() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctrl->scan_lock
HALF_LOCKED2 &pool->lock

drivers/nvme/host/core.c nvme_update_ns_info_generic() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctrl->scan_lock
HALF_LOCKED2 &pool->lock

drivers/block/loop.c __loop_clr_fd() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &disk->open_mutex
TYPE_LOCK (struct gendisk)->open_mutex

drivers/block/loop.c loop_clear_limits() -> queue_limits_start_update()

Type Parameter Key Value
LOCK2 &pool->lock

drivers/block/loop.c loop_configure() -> queue_limits_start_update()

Type Parameter Key Value
LOCK2 &lo->lo_mutex
TYPE_LOCK (struct loop_device)->lo_mutex

drivers/block/loop.c loop_set_block_size() -> queue_limits_start_update()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
LOCK2 &lo->lo_mutex
TYPE_LOCK (struct loop_device)->lo_mutex

drivers/block/loop.c loop_set_dio() -> queue_limits_start_update()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 0 q->mq_freeze_lock.dep_map->name 0-255
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 q->mq_freeze_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 q->mq_freeze_owner 1-u64max
PARAM_VALUE 0 q->q_usage_counter.data 0,4096-ptr_max
PARAM_VALUE 0 q->q_usage_counter.data->rcu.func 1-u64max
PARAM_VALUE 0 q->q_usage_counter.percpu_count_ptr 1-u64max
LOCK2 &lo->lo_mutex
TYPE_LOCK (struct loop_device)->lo_mutex

block/blk-zoned.c disk_update_zone_resources() -> queue_limits_start_update()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 0 q->mq_ops 0-1
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 q->async_depth 0-10238[c]
HOST_DATA 0 q->limits.alignment_offset 0-u16max[c]
HOST_DATA 0 q->limits.atomic_write_max_sectors 0-8388607[c]
HOST_DATA 0 q->limits.discard_granularity 512-u32max[c]
HOST_DATA 0 q->limits.integrity.interval_exp 0-31[c]
HOST_DATA 0 q->limits.io_min 512-65536[c]
HOST_DATA 0 q->limits.max_active_zones 0-u32max
HOST_DATA 0 q->limits.max_open_zones 0-u32max
HOST_DATA 0 q->limits.max_sectors 0-s32max[c]
HOST_DATA 0 q->limits.max_zone_append_sectors 0-s32max[c]
HOST_DATA 0 q->limits.zone_write_granularity 512-65536[c]
HOST_DATA 0 q->nr_requests 0-10238[c]
NO_OVERFLOW_SIMPLE 0 q->async_depth
NO_OVERFLOW_SIMPLE 0 q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 q->nr_requests
HALF_LOCKED2 &ub->mutex
HALF_LOCKED2 global &lock

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

Type Parameter Key Value
PARAM_VALUE 0 q->blkcg_mutex.magic 4096-ptr_max
PARAM_VALUE 0 q->blkg_list.next 4096-ptr_max
PARAM_VALUE 0 q->blkg_list.prev 4096-ptr_max
PARAM_VALUE 0 q->debugfs_mutex.magic 4096-ptr_max
PARAM_VALUE 0 q->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 q->elevator_lock.magic 4096-ptr_max
PARAM_VALUE 0 q->flush_list.next 4096-ptr_max
PARAM_VALUE 0 q->flush_list.prev 4096-ptr_max
PARAM_VALUE 0 q->icq_list.next 4096-ptr_max
PARAM_VALUE 0 q->icq_list.prev 4096-ptr_max
PARAM_VALUE 0 q->id 0-s32max
PARAM_VALUE 0 q->io_lockdep_map.cpu 0
PARAM_VALUE 0 q->last_merge 0
PARAM_VALUE 0 q->limits.atomic_write_boundary_sectors 0-8388607
PARAM_VALUE 0 q->limits.atomic_write_max_sectors 0-8388607
PARAM_VALUE 0 q->limits.atomic_write_unit_max 0-1171456
PARAM_VALUE 0 q->limits.atomic_write_unit_min 0-1171456
PARAM_VALUE 0 q->limits.discard_granularity 0,512-u32max
PARAM_VALUE 0 q->limits.dma_alignment 1-u32max
PARAM_VALUE 0 q->limits.features 0,3-u32max
PARAM_VALUE 0 q->limits.integrity.interval_exp 0-31
PARAM_VALUE 0 q->limits.io_min 512-u32max
PARAM_VALUE 0 q->limits.logical_block_size 512-65536
PARAM_VALUE 0 q->limits.max_discard_segments 1-u16max
PARAM_VALUE 0 q->limits.max_fast_segment_size 0-4096
PARAM_VALUE 0 q->limits.max_segment_size 1-u32max
PARAM_VALUE 0 q->limits.max_segments 1-u16max
PARAM_VALUE 0 q->limits.max_user_discard_sectors u32max
PARAM_VALUE 0 q->limits.max_user_sectors 0,8-u32max
PARAM_VALUE 0 q->limits.max_user_wzeroes_unmap_sectors u32max
PARAM_VALUE 0 q->limits.physical_block_size 512-u32max
PARAM_VALUE 0 q->limits.seg_boundary_mask 1-u64max
PARAM_VALUE 0 q->limits.zone_write_granularity 512-u32max
PARAM_VALUE 0 q->limits_lock.first_waiter 0
PARAM_VALUE 0 q->limits_lock.magic 4096-ptr_max
PARAM_VALUE 0 q->limits_lock.osq.tail.counter 0
PARAM_VALUE 0 q->limits_lock.owner.counter 0
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->list.prev->prev 0,5159360019465732096
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->task->blocked_on (-1)-0
PARAM_VALUE 0 q->mq_freeze_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 q->mq_kobj 4096-ptr_max
PARAM_VALUE 0 q->nr_hw_queues 1-4294967294
PARAM_VALUE 0 q->q_lockdep_map.cpu 0
PARAM_VALUE 0 q->queue_ctx 4096-ptr_max
PARAM_VALUE 0 q->queue_flags 0,4-u64max
PARAM_VALUE 0 q->queue_hw_ctx 1-u64max
PARAM_VALUE 0 q->queuedata 4096-ptr_max
PARAM_VALUE 0 q->refs.refs.counter 1
PARAM_VALUE 0 q->requeue_list.next 4096-ptr_max
PARAM_VALUE 0 q->requeue_list.prev 4096-ptr_max
PARAM_VALUE 0 q->rq_qos_mutex.magic 4096-ptr_max
PARAM_VALUE 0 q->rq_timeout 1-u32max
PARAM_VALUE 0 q->stats 4096-ptr_max
PARAM_VALUE 0 q->sysfs_lock.magic 4096-ptr_max
PARAM_VALUE 0 q->tag_set 4096-ptr_max
PARAM_VALUE 0 q->tag_set_list.next 4096-ptr_max
PARAM_VALUE 0 q->timeout.flags 0-4194302
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 q->queue_depth 1-4095[c]
NO_OVERFLOW_SIMPLE 0 q->async_depth
NO_OVERFLOW_SIMPLE 0 q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 q->nr_requests
LOCK2 &shost->scan_mutex
TYPE_LOCK (struct Scsi_Host)->scan_mutex

block/blk-integrity.c flag_store() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/block/virtio_blk.c cache_type_store() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/md/dm-table.c dm_table_set_restrictions() -> queue_limits_start_update()

Type Parameter Key Value
PARAM_VALUE 0 q 0,4096-ptr_max
DATA_SOURCE 0 q $1
NO_OVERFLOW_SIMPLE 0 q->async_depth
NO_OVERFLOW_SIMPLE 0 q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 q->nr_requests
NO_OVERFLOW_SIMPLE 0 q->tag_set->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 q->tag_set->queue_depth
HALF_LOCKED2 &md->suspend_lock

drivers/md/raid5.c raid5_store_skip_copy() -> queue_limits_start_update()

Type Parameter Key Value
CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mddev->reconfig_mutex
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex
TYPE_LOCK (struct mddev)->reconfig_mutex

drivers/scsi/sr.c sr_revalidate_disk() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &disk->open_mutex

drivers/block/nbd.c nbd_set_size() -> queue_limits_start_update()

Type Parameter Key Value
PARAM_VALUE 0 q->mq_kobj->sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 q->tag_set->update_nr_hwq_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 q->tag_set->update_nr_hwq_lock.first_waiter->type 0-1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &nbd->config_lock
TYPE_LOCK (struct nbd_device)->config_lock

drivers/scsi/mpi3mr/mpi3mr_os.c mpi3mr_update_sdev() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mrioc->tgtdev_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &system_transition_mutex

drivers/usb/storage/scsiglue.c max_sectors_store() -> queue_limits_start_update()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex