Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 4 files:
- fs/btrfs/block-group.c
- fs/btrfs/block-rsv.c, line 404
- fs/btrfs/space-info.c
- fs/btrfs/space-info.h, line 324
Smatch caller information:
fs/btrfs/space-info.c btrfs_add_bg_to_space_info() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &space_info->lock | |
| HALF_LOCKED2 | &fs_info->chunk_mutex | ||
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/space-info.c btrfs_return_free_space() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info->dev_replace.rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | space_info->fs_info->dev_replace.rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | space_info->fs_info->global_block_rsv.lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| CAPPED_DATA | 0 | space_info | 1 |
| DATA_SOURCE | 0 | space_info | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | space_info->bytes_may_use | |
| LOCK2 | 0 | &space_info->lock | |
| HALF_LOCKED2 | &fs_info->unused_bg_unpin_mutex | ||
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/space-info.c maybe_fail_all_tickets() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| CAPPED_DATA | 0 | space_info | 1 |
| CAPPED_DATA | 0 | space_info->tickets_id | 1 |
| CAPPED_DATA | 0 | &space_info->tickets | 1 |
| DATA_SOURCE | 0 | space_info | $0 |
| PARAM_COMPARE | 0 | &space_info->tickets | != $0->tickets.next |
| PREEMPT_ADD | |||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &space_info->lock | |
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/space-info.c priority_reclaim_data_space() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->full | 1 |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->priority_tickets.prev->next | 643370198843097104 |
| PARAM_VALUE | 0 | space_info->priority_tickets.prev->next->next | 4096-ptr_max |
| DATA_SOURCE | 0 | space_info | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &space_info->lock | |
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/space-info.c priority_reclaim_metadata_space() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info->balance_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->fs_info->fs_devices | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info->fs_devices->per_profile_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->priority_tickets.prev->next | 643370198843097104 |
| PARAM_VALUE | 0 | space_info->priority_tickets.prev->next->next | 4096-ptr_max |
| DATA_SOURCE | 0 | space_info | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &space_info->lock | |
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/block-rsv.c btrfs_space_info_free_bytes_may_use() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| DATA_SOURCE | 0 | space_info | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &space_info->lock | |
| HALF_LOCKED2 | &delayed_node->mutex | ||
| HALF_LOCKED2 | &fs_info->chunk_mutex | ||
| HALF_LOCKED2 | &fs_info->commit_root_sem | ||
| HALF_LOCKED2 | &fs_info->fs_devices->device_list_mutex | ||
| HALF_LOCKED2 | &fs_info->fs_roots_radix_lock | ||
| HALF_LOCKED2 | &fs_info->qgroup_ioctl_lock | ||
| HALF_LOCKED2 | &fs_info->qgroup_lock | ||
| HALF_LOCKED2 | &fs_info->subvol_sem | ||
| HALF_LOCKED2 | &fs_info->unused_bg_unpin_mutex | ||
| HALF_LOCKED2 | &node->mutex | ||
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/block-rsv.c btrfs_update_global_block_rsv() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &block_rsv->lock | ||
| LOCK2 | 0 | &space_info->lock | |
| HALF_LOCKED2 | &fs_info->chunk_mutex | ||
| TYPE_LOCK | (struct btrfs_block_rsv)->lock | ||
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/block-group.c btrfs_add_reserved_bytes() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | space_info->bytes_reserved | |
| LOCK2 | &space_info->groups_sem | ||
| LOCK2 | 0 | &space_info->lock | |
| HALF_LOCKED2 | &fs_info->remap_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct btrfs_space_info)->groups_sem | ||
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/block-group.c btrfs_free_reserved_bytes() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->max_extent_size | 0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | space_info->bytes_readonly | |
| NO_OVERFLOW_SIMPLE | 0 | space_info->bytes_reserved | |
| NO_OVERFLOW_SIMPLE | 0 | space_info->bytes_zone_unusable | |
| LOCK2 | 0 | &space_info->lock | |
| HALF_LOCKED2 | &fs_info->remap_mutex | ||
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/delalloc-space.c btrfs_space_info_free_bytes_may_use() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| DATA_SOURCE | 0 | space_info | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &space_info->lock | |
| HALF_LOCKED2 | &tree->lock | ||
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/transaction.c btrfs_space_info_free_bytes_may_use() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| DATA_SOURCE | 0 | space_info | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &space_info->lock | |
| TYPE_LOCK | (struct btrfs_space_info)->lock |
fs/btrfs/delayed-ref.c btrfs_space_info_free_bytes_may_use() -> btrfs_try_granting_tickets()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | space_info | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->clamp | s32min-8 |
| PARAM_VALUE | 0 | space_info->flush | 1 |
| PARAM_VALUE | 0 | space_info->fs_info->delalloc_bytes.lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->fs_info->delalloc_root_mutex->first_waiter->task->blocked_lock.owner | (-4611686018427387904)-4611686018427387903 |
| PARAM_VALUE | 0 | space_info->fs_info->delalloc_root_mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | space_info->fs_info->delalloc_root_mutex.first_waiter->task->blocked_lock.owner | (-1) |
| PARAM_VALUE | 0 | space_info->fs_info->delalloc_root_mutex.first_waiter->task->blocked_lock.owner_cpu | 4294967295 |
| PARAM_VALUE | 0 | space_info->fs_info->delalloc_root_mutex.first_waiter->task->usage.refs.counter | s32min-s32max |
| PARAM_VALUE | 0 | space_info->fs_info->delalloc_roots.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info->delalloc_roots.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info->delalloc_roots.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info->delalloc_roots.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info->delayed_iput_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->fs_info->delayed_iputs_wait.head.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info->delayed_iputs_wait.head.prev->next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info->fs_devices->device_list_mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | space_info->fs_info->fs_devices->per_profile_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->fs_info->ordered_bytes.lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->fs_info->ordered_operations_mutex->first_waiter->task->blocked_lock.owner | (-4611686018427387904)-4611686018427387903 |
| PARAM_VALUE | 0 | space_info->fs_info->ordered_operations_mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | space_info->fs_info->ordered_operations_mutex.first_waiter->task->blocked_lock.owner | (-1) |
| PARAM_VALUE | 0 | space_info->fs_info->ordered_operations_mutex.first_waiter->task->blocked_lock.owner_cpu | 4294967295 |
| PARAM_VALUE | 0 | space_info->fs_info->ordered_operations_mutex.first_waiter->task->usage.refs.counter | s32min-s32max |
| PARAM_VALUE | 0 | space_info->fs_info->ordered_roots.prev->next->prev | 6140170182684090368 |
| PARAM_VALUE | 0 | space_info->fs_info->reclaim_bgs.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | space_info->fs_info->reclaim_bgs_lock->first_waiter->task->blocked_lock.owner | (-4611686018427387904)-4611686018427387903 |
| PARAM_VALUE | 0 | space_info->fs_info->reclaim_bgs_lock.first_waiter->task->blocked_lock.owner | (-1) |
| PARAM_VALUE | 0 | space_info->fs_info->reclaim_bgs_lock.first_waiter->task->blocked_lock.owner_cpu | 4294967295 |
| PARAM_VALUE | 0 | space_info->fs_info->reclaim_bgs_lock.first_waiter->task->usage.refs.counter | s32min-s32max |
| PARAM_VALUE | 0 | space_info->fs_info->unused_bgs_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | space_info->tickets.prev->next | 643370198843097104 |
| PARAM_VALUE | 0 | space_info->tickets.prev->next->next | 4096-ptr_max |
| CAPPED_DATA | 0 | space_info | 1 |
| DATA_SOURCE | 0 | space_info | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &space_info->lock | |
| HALF_LOCKED2 | &dev_replace->lock_finishing_cancel_unmount | ||
| HALF_LOCKED2 | &fs_info->cleaner_mutex | ||
| HALF_LOCKED2 | &fs_info->subvol_sem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct btrfs_space_info)->lock |