Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 2 files:
Smatch caller information:
fs/btrfs/qgroup.c btrfs_qgroup_trace_subtree() -> btrfs_qgroup_trace_leaf_items()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | trans | 4096-ptr_max |
| PARAM_VALUE | 0 | trans->fs_info | 4096-ptr_max |
| PARAM_VALUE | 0 | trans->fs_info->chunk_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->chunk_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->commit_root_sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->commit_root_sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->qgroup_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | trans->fs_info->transaction_kthread->delays->blkio_count | 0-4294967295 |
| PARAM_VALUE | 0 | trans->fs_info->transaction_kthread->delays->blkio_delay_max | 0-s64max |
| PARAM_VALUE | 0 | trans->fs_info->transaction_kthread->delays->blkio_delay_min | 0-s64max |
| PARAM_VALUE | 0 | trans->fs_info->tree_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->tree_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | eb | 4096-ptr_max |
| PARAM_VALUE | 1 | eb->fs_info->stripe_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 1 | eb->fs_info->stripe_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | eb->lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 1 | eb->lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 1 | eb->lock.first_waiter->type | 0-1 |
| BUF_SIZE | 0 | trans | (-1),1-s32max |
| BUF_SIZE | 0 | trans | (-1),1-s32max |
| BUF_SIZE | 1 | eb | (-1)-s32max |
| BUF_SIZE | 1 | eb | (-1)-s32max |
| CAPPED_DATA | 1 | eb | 1 |
| DATA_SOURCE | 0 | trans | $0 |
| DATA_SOURCE | 1 | eb | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->pinned_extents.inode->vfs_inode.i_bytes | |
| LOCK2 | &fs_info->cleaner_mutex | ||
| LOCK2 | 1 | &eb->lock | |
| HALF_LOCKED2 | &next->lock | ||
| HALF_LOCKED2 | &node->lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->cleaner_mutex | ||
| TYPE_LOCK | (struct extent_buffer)->lock |
fs/btrfs/qgroup.c btrfs_qgroup_trace_subtree() -> btrfs_qgroup_trace_leaf_items()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | trans | 4096-ptr_max |
| PARAM_VALUE | 0 | trans->fs_info | 4096-ptr_max |
| PARAM_VALUE | 0 | trans->fs_info->btree_inode->i_mapping->host->i_sb->s_export_op->fh_to_dentry | 0,8684,447817974243774464,687732489194512384,742201802719268864,868497899885588480,1471448175530500096,2021658383390310400,2445877819203563520,2512819722689847296,2649270699546726400,2761259683714371584,2893332316235677696-s64max |
| PARAM_VALUE | 0 | trans->fs_info->chunk_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->chunk_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->commit_root_sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->commit_root_sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->qgroup_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | trans->fs_info->transaction_kthread->delays->blkio_count | 0-4294967295 |
| PARAM_VALUE | 0 | trans->fs_info->transaction_kthread->delays->blkio_delay_max | 0-s64max |
| PARAM_VALUE | 0 | trans->fs_info->transaction_kthread->delays->blkio_delay_min | 0-s64max |
| PARAM_VALUE | 0 | trans->fs_info->tree_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->tree_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | eb | 1-u64max |
| BUF_SIZE | 0 | trans | (-1),1-s32max |
| BUF_SIZE | 0 | trans | (-1),1-s32max |
| DATA_SOURCE | 0 | trans | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->pinned_extents.inode->vfs_inode.i_bytes | |
| LOCK2 | &fs_info->cleaner_mutex | ||
| LOCK2 | &root_eb->lock | ||
| HALF_LOCKED2 | &eb->lock | ||
| HALF_LOCKED2 | &next->lock | ||
| HALF_LOCKED2 | &node->lock | ||
| TYPE_LOCK | (struct btrfs_fs_info)->cleaner_mutex | ||
| TYPE_LOCK | (struct extent_buffer)->lock |
fs/btrfs/qgroup.c qgroup_trace_extent_swap() -> btrfs_qgroup_trace_leaf_items()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | trans | 4096-ptr_max |
| PARAM_VALUE | 0 | trans->fs_info | 4096-ptr_max |
| PARAM_VALUE | 0 | trans->fs_info->block_group_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->block_group_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->btree_inode->i_mapping->host->i_sb->s_export_op->fh_to_dentry | 0,8684,447817974243774464,687732489194512384,742201802719268864,868497899885588480,1471448175530500096,2021658383390310400,2445877819203563520,2512819722689847296,2649270699546726400,2761259683714371584,2893332316235677696-s64max |
| PARAM_VALUE | 0 | trans->fs_info->chunk_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->chunk_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->commit_root_sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->commit_root_sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->dev_replace.rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->dev_replace.rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->dev_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->dev_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->quota_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->quota_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->remap_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->remap_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->sb->s_umount.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->sb->s_umount.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->stripe_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->stripe_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->transaction_kthread->sched_class->uclamp_enabled | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->tree_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->tree_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->uuid_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->uuid_root->node->lock.first_waiter->type | 0-1 |
| BUF_SIZE | 0 | trans | (-1)-s32max |
| BUF_SIZE | 0 | trans | (-1)-s32max |
| BUF_SIZE | 0 | trans->block_rsv | (-1)-0,120 |
| BUF_SIZE | 0 | trans->pending_snapshot | (-1),208 |
| DATA_SOURCE | 0 | trans | $0 |
| STR_LEN | 0 | trans | (-1)-1010101 |
| STR_LEN | 0 | trans | (-1)-1010101 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | trans->block_rsv->space_info->bytes_may_use | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->chunk_root->dirty_log_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->chunk_root->dirty_log_pages.inode->vfs_inode.i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->stripe_root->dirty_log_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->stripe_root->dirty_log_pages.inode->vfs_inode.i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->tree_root->dirty_log_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->tree_root->dirty_log_pages.inode->vfs_inode.i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->dirty_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->dirty_pages.inode->vfs_inode.i_bytes | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->dirty_pages.inode->vfs_inode.i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->pinned_extents.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->pinned_extents.inode->vfs_inode.i_bytes | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->pinned_extents.inode->vfs_inode.i_size | |
| USER_PTR | 0 | trans->pending_snapshot->inherit | |
| HALF_LOCKED2 | &eb->lock | ||
| HALF_LOCKED2 | 0 | &trans->fs_info->chunk_mutex | |
| HALF_LOCKED2 | 0 | &trans->fs_info->commit_root_sem | |
| HALF_LOCKED2 | 0 | &trans->fs_info->fs_devices->device_list_mutex | |
| HALF_LOCKED2 | 0 | &trans->fs_info->fs_roots_radix_lock | |
| HALF_LOCKED2 | 0 | &trans->fs_info->qgroup_ioctl_lock | |
| HALF_LOCKED2 | 0 | &trans->fs_info->qgroup_lock | |
| HALF_LOCKED2 | 0 | &trans->fs_info->remap_mutex | |
| HALF_LOCKED2 | 0 | &trans->fs_info->unused_bg_unpin_mutex | |
| HALF_LOCKED2 | 0 | &trans->transaction->cache_write_mutex | |
| HALF_LOCKED2 | 0 | &trans->transaction->delayed_refs.lock |
fs/btrfs/qgroup.c qgroup_trace_extent_swap() -> btrfs_qgroup_trace_leaf_items()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | trans | 4096-ptr_max |
| PARAM_VALUE | 0 | trans->fs_info | 4096-ptr_max |
| PARAM_VALUE | 0 | trans->fs_info->block_group_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->block_group_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->btree_inode->i_mapping->host->i_sb->s_export_op->fh_to_dentry | 0,8684,447817974243774464,687732489194512384,742201802719268864,868497899885588480,1471448175530500096,2021658383390310400,2445877819203563520,2512819722689847296,2649270699546726400,2761259683714371584,2893332316235677696-s64max |
| PARAM_VALUE | 0 | trans->fs_info->chunk_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->chunk_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->commit_root_sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->commit_root_sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->dev_replace.rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->dev_replace.rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->dev_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->dev_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->quota_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->quota_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->remap_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->remap_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->sb->s_umount.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->sb->s_umount.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->stripe_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->stripe_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->transaction_kthread->sched_class->uclamp_enabled | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->tree_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->tree_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->uuid_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->uuid_root->node->lock.first_waiter->type | 0-1 |
| BUF_SIZE | 0 | trans | (-1)-s32max |
| BUF_SIZE | 0 | trans | (-1)-s32max |
| BUF_SIZE | 0 | trans->block_rsv | (-1)-0,120 |
| BUF_SIZE | 0 | trans->pending_snapshot | (-1),208 |
| DATA_SOURCE | 0 | trans | $0 |
| STR_LEN | 0 | trans | (-1)-1010101 |
| STR_LEN | 0 | trans | (-1)-1010101 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | trans->block_rsv->space_info->bytes_may_use | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->chunk_root->dirty_log_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->chunk_root->dirty_log_pages.inode->vfs_inode.i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->stripe_root->dirty_log_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->stripe_root->dirty_log_pages.inode->vfs_inode.i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->tree_root->dirty_log_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->fs_info->tree_root->dirty_log_pages.inode->vfs_inode.i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->dirty_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->dirty_pages.inode->vfs_inode.i_bytes | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->dirty_pages.inode->vfs_inode.i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->pinned_extents.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->pinned_extents.inode->vfs_inode.i_bytes | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->pinned_extents.inode->vfs_inode.i_size | |
| USER_PTR | 0 | trans->pending_snapshot->inherit | |
| HALF_LOCKED2 | &eb->lock | ||
| HALF_LOCKED2 | 0 | &trans->fs_info->chunk_mutex | |
| HALF_LOCKED2 | 0 | &trans->fs_info->commit_root_sem | |
| HALF_LOCKED2 | 0 | &trans->fs_info->fs_devices->device_list_mutex | |
| HALF_LOCKED2 | 0 | &trans->fs_info->fs_roots_radix_lock | |
| HALF_LOCKED2 | 0 | &trans->fs_info->qgroup_ioctl_lock | |
| HALF_LOCKED2 | 0 | &trans->fs_info->qgroup_lock | |
| HALF_LOCKED2 | 0 | &trans->fs_info->remap_mutex | |
| HALF_LOCKED2 | 0 | &trans->fs_info->unused_bg_unpin_mutex | |
| HALF_LOCKED2 | 0 | &trans->transaction->cache_write_mutex | |
| HALF_LOCKED2 | 0 | &trans->transaction->delayed_refs.lock |
fs/btrfs/extent-tree.c walk_up_proc() -> btrfs_qgroup_trace_leaf_items()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | trans | 0-ptr_max |
| PARAM_VALUE | 0 | trans->fs_info->block_group_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->block_group_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->chunk_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->chunk_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->commit_root_sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->commit_root_sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->dev_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->dev_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->quota_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->quota_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->stripe_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->stripe_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->tree_root->node->lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | trans->fs_info->tree_root->node->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | eb | 4096-ptr_max |
| PARAM_VALUE | 1 | eb->lock.first_waiter->type | 0-1 |
| BUF_SIZE | 0 | trans | (-1),1-s32max |
| BUF_SIZE | 0 | trans | (-1),1-s32max |
| DATA_SOURCE | 0 | trans | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->dirty_pages.inode->vfs_inode.i_bytes | |
| NO_OVERFLOW_SIMPLE | 0 | trans->transaction->pinned_extents.inode->vfs_inode.i_bytes | |
| LOCK2 | &fs_info->cleaner_mutex | ||
| HALF_LOCKED2 | &node->lock | ||
| HALF_LOCKED2 | 1 | &eb->lock | |
| TYPE_LOCK | (struct btrfs_fs_info)->cleaner_mutex |