Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/btrfs/sysfs.c btrfs_discard_iops_limit_store() -> btrfs_discard_schedule_work()

Type Parameter Key Value
PARAM_VALUE 0 discard_ctl 4096-ptr_max
PARAM_VALUE 1 override 1
BUF_SIZE 0 discard_ctl 400
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 discard_ctl->delay_ms 1-999
USER_DATA 0 discard_ctl->iops_limit 0-u32max
NO_OVERFLOW_SIMPLE 0 discard_ctl->iops_limit
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

fs/btrfs/sysfs.c btrfs_discard_kbps_limit_store() -> btrfs_discard_schedule_work()

Type Parameter Key Value
PARAM_VALUE 0 discard_ctl 4096-ptr_max
PARAM_VALUE 1 override 1
BUF_SIZE 0 discard_ctl 400
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 discard_ctl->kbps_limit 0-u32max
NO_OVERFLOW_SIMPLE 0 discard_ctl->kbps_limit
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

fs/btrfs/extent-tree.c btrfs_finish_extent_commit() -> btrfs_discard_schedule_work()

Type Parameter Key Value
PARAM_VALUE 0 discard_ctl 4096-ptr_max
PARAM_VALUE 1 override 1
NOCHECK_CALL

fs/btrfs/discard.c btrfs_discard_cancel_work() -> btrfs_discard_schedule_work()

Type Parameter Key Value
PARAM_VALUE 0 discard_ctl 4096-ptr_max
PARAM_VALUE 0 discard_ctl->block_group 0
PARAM_VALUE 0 discard_ctl->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 discard_ctl->work.work.lockdep_map->name 0-255
PARAM_VALUE 1 override 1
DATA_SOURCE 0 discard_ctl $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fs_info->reclaim_bgs_lock

fs/btrfs/discard.c btrfs_discard_queue_work() -> btrfs_discard_schedule_work()

Type Parameter Key Value
PARAM_VALUE 0 discard_ctl 4096-ptr_max
PARAM_VALUE 1 override 0
DATA_SOURCE 0 discard_ctl $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &cluster->refill_lock
HALF_LOCKED2 &fs_info->reclaim_bgs_lock
HALF_LOCKED2 &fs_info->remap_mutex
HALF_LOCKED2 &fs_info->unused_bgs_lock

fs/btrfs/discard.c btrfs_discard_workfn() -> btrfs_discard_schedule_work()

Type Parameter Key Value
PARAM_VALUE 0 discard_ctl 4096-ptr_max
PARAM_VALUE 0 discard_ctl->block_group 0
PARAM_VALUE 0 discard_ctl->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 override 0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock