Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

block/bdev.c bdev_file_open_by_dev() -> blkdev_put_no_open()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 0 bdev->bd_device.kobj.kref.refcount.refs.counter (-1073741824),0-s32max
BUF_SIZE 0 bdev 2136
DATA_SOURCE 0 bdev r blkdev_get_no_open
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &frag->frag_sem
HALF_LOCKED2 &md->table_devices_lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &jfs_log_mutex
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 global &xenwatch_mutex

block/bdev.c bdev_release() -> blkdev_put_no_open()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 0 bdev->bd_disk->ev 0,4096-ptr_max
PARAM_VALUE 0 bdev->bd_disk->ev->clearing 0-4294967295
PARAM_VALUE 0 bdev->bd_disk->ev->dwork.cpu s32min-s32max
PARAM_VALUE 0 bdev->bd_disk->ev->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_disk->fops 4096-ptr_max
PARAM_VALUE 0 bdev->bd_disk->fops->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 bdev->bd_disk->open_mutex.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_disk->open_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 bdev->bd_disk->open_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 bdev->bd_disk->open_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 bdev->bd_disk->open_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_disk->open_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 bdev->bd_disk->open_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 bdev->bd_disk->open_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 bdev->bd_disk->open_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 bdev->bd_disk->open_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 bdev->bd_disk->open_mutex.wait_lock.dep_map->name 0-255
BUF_SIZE 0 bdev 2136
DATA_SOURCE 0 bdev r file_bdev
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

block/bdev.c bdev_statx() -> blkdev_put_no_open()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 0 bdev->bd_device.kobj.kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 bdev->bd_queue 4096-ptr_max
BUF_SIZE 0 bdev 2136
DATA_SOURCE 0 bdev r blkdev_get_no_open
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &iint->mutex
HALF_LOCKED2 &lo->lo_mutex

block/blk-cgroup.c blkg_conf_close_bdev() -> blkdev_put_no_open()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 0 bdev->bd_queue 4096-ptr_max
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.wait_lock.owner_cpu u32max
CAPPED_DATA 0 &bdev->bd_queue->rq_qos_mutex 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &bdev->bd_queue->rq_qos_mutex
LOCK2 &of->mutex
HALF_LOCKED2 &ctx.bdev->bd_queue->rq_qos_mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

block/blk-cgroup.c blkg_conf_open_bdev() -> blkdev_put_no_open()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 0 bdev->bd_device.kobj.kref.refcount.refs.counter (-1073741824),0-s32max
BUF_SIZE 0 bdev 2136
DATA_SOURCE 0 bdev r blkdev_get_no_open
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

block/blk-cgroup.c blkg_conf_open_bdev() -> blkdev_put_no_open()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 0 bdev->bd_device.kobj.kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 bdev->bd_disk 4096-ptr_max
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 bdev->bd_queue->rq_qos_mutex.wait_lock.owner_cpu u32max
BUF_SIZE 0 bdev 2136
CAPPED_DATA 0 &bdev->bd_queue->rq_qos_mutex 1
DATA_SOURCE 0 bdev r blkdev_get_no_open
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
LOCK2 0 &bdev->bd_queue->rq_qos_mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex
TYPE_LOCK (struct request_queue)->rq_qos_mutex

block/fops.c blkdev_open() -> blkdev_put_no_open()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 0 bdev->bd_device.kobj.kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 bdev->bd_disk 4096-ptr_max
PARAM_VALUE 0 bdev->bd_disk->queue 4096-ptr_max
PARAM_VALUE 0 bdev->bd_disk->queue->limits.integrity.metadata_size 0-1
PARAM_VALUE 0 bdev->bd_holder_ops->freeze 7536128971011219456
PARAM_VALUE 0 bdev->bd_holder_ops->mark_dead 3524860355147841536
PARAM_VALUE 0 bdev->bd_holder_ops->sync 8235259936313790464
PARAM_VALUE 0 bdev->bd_holder_ops->thaw 723535252275687424
PARAM_VALUE 0 bdev->bd_queue 4096-ptr_max
BUF_SIZE 0 bdev 2136
CAPPED_DATA 0 bdev 1
DATA_SOURCE 0 bdev r blkdev_get_no_open
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL