Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 6 files:

Smatch caller information:

fs/btrfs/delayed-inode.c __btrfs_commit_inode_delayed_items() -> btrfs_record_root_in_trans()

Type Parameter Key Value
PARAM_VALUE 0 trans 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->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->ref_verify_lock.rlock.dep_map->name 0-255
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->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->transaction->dirty_pages.inode->delalloc_inodes.next->prev 4096-ptr_max
PARAM_VALUE 0 trans->transaction->dirty_pages.inode->root->delalloc_root.next->prev 4096-ptr_max
PARAM_VALUE 0 trans->transaction->pinned_extents.inode->delalloc_inodes.next->prev 4096-ptr_max
PARAM_VALUE 0 trans->transaction->pinned_extents.inode->root->delalloc_root.next->prev 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PARAM_VALUE 1 root->accounting_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 root->dirty_list.next 4096-ptr_max
PARAM_VALUE 1 root->dirty_log_pages.inode->delalloc_inodes.next->prev 4096-ptr_max
PARAM_VALUE 1 root->dirty_log_pages.inode->root->delalloc_root.next->prev 4096-ptr_max
PARAM_VALUE 1 root->fs_info->btree_inode->i_mapping->host->i_sb->s_export_op->fh_to_dentry 0,8684,447817974243774464,687732489194512384,742201802719268864
PARAM_VALUE 1 root->fs_info->delayed_block_rsv.space_info->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 root->fs_info->dirty_cowonly_roots.next 4096-ptr_max
PARAM_VALUE 1 root->fs_info->dirty_cowonly_roots.next->next 4096-ptr_max
PARAM_VALUE 1 root->fs_info->dirty_cowonly_roots.next->prev 4096-ptr_max
PARAM_VALUE 1 root->fs_info->dirty_cowonly_roots.prev 4096-ptr_max
PARAM_VALUE 1 root->fs_info->dirty_cowonly_roots.prev->next 4096-ptr_max
PARAM_VALUE 1 root->fs_info->dirty_cowonly_roots.prev->next->next 4096-ptr_max
PARAM_VALUE 1 root->fs_info->global_block_rsv.full 1
PARAM_VALUE 1 root->fs_info->global_block_rsv.reserved 0-536870912
PARAM_VALUE 1 root->fs_info->global_block_rsv.size 0-536870912
PARAM_VALUE 1 root->fs_info->qgroup_flags 0,4-u64max
PARAM_VALUE 1 root->node->fs_info->tree_mod_log.rb_node 4096-ptr_max
PARAM_VALUE 1 root->node->fs_info->tree_mod_log_lock.owner (-1)
PARAM_VALUE 1 root->node->fs_info->tree_mod_log_lock.owner_cpu u32max
BUF_SIZE 0 trans (-1),1-s32max
BUF_SIZE 0 trans (-1),1-s32max
CAPPED_DATA 1 root 1
DATA_SOURCE 0 trans $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 trans->transaction->dirty_pages.inode->vfs_inode.i_bytes
USER_PTR 0 trans->pending_snapshot->inherit

fs/btrfs/inode.c btrfs_delete_subvolume() -> btrfs_record_root_in_trans()

Type Parameter Key Value
PARAM_VALUE 0 trans 4096-ptr_max
PARAM_VALUE 0 trans->block_rsv->failfast 0
PARAM_VALUE 0 trans->block_rsv->full 0
PARAM_VALUE 0 trans->block_rsv->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 trans->block_rsv->qgroup_rsv_reserved 0-u32max
PARAM_VALUE 0 trans->block_rsv->qgroup_rsv_size 0
PARAM_VALUE 0 trans->block_rsv->space_info 0,4096-ptr_max
PARAM_VALUE 0 trans->block_rsv->type 9
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->ref_verify_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 trans->fs_info->tree_root->accounting_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 trans->fs_info->tree_root->dirty_log_pages.inode->delalloc_inodes.next->prev 4096-ptr_max
PARAM_VALUE 0 trans->fs_info->tree_root->dirty_log_pages.inode->root->delalloc_root.next->prev 4096-ptr_max
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->transaction->dirty_pages.inode->delalloc_inodes.next->prev 4096-ptr_max
PARAM_VALUE 0 trans->transaction->dirty_pages.inode->root->delalloc_root.next->prev 4096-ptr_max
PARAM_VALUE 0 trans->transaction->pinned_extents.inode->delalloc_inodes.next->prev 4096-ptr_max
PARAM_VALUE 0 trans->transaction->pinned_extents.inode->root->delalloc_root.next->prev 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PARAM_VALUE 1 root->nr_swapfiles.counter 0
PARAM_VALUE 1 root->root_item_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 root->send_in_progress 0
DATA_SOURCE 0 trans r btrfs_start_transaction
RX_PATH
TASK_NOT_RUNNING
LOCK2 &fs_info->subvol_sem
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 &dentry->d_lockref.lock
TYPE_LOCK (struct btrfs_fs_info)->subvol_sem

fs/btrfs/relocation.c record_reloc_root_in_trans() -> btrfs_record_root_in_trans()

Type Parameter Key Value
PARAM_VALUE 0 trans 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->block_group_root->refs.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 trans->fs_info->chunk_block_rsv.space_info->force_alloc 0,2
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->chunk_root->refs.refs.counter (-1073741824),0-s32max
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->dev_root->refs.refs.counter (-1073741824),0-s32max
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->quota_root->refs.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 trans->fs_info->remap_root->refs.refs.counter (-1073741824),0-s32max
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->stripe_root->refs.refs.counter (-1073741824),0-s32max
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->tree_root->refs.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 trans->fs_info->uuid_root->refs.refs.counter (-1073741824),0-s32max
PARAM_VALUE 1 root 4096-ptr_max
PARAM_VALUE 1 root->reloc_root 4096-ptr_max
BUF_SIZE 1 root (-1),2888
BUF_SIZE 1 root (-1),2888
CAPPED_DATA 1 root->reloc_root 1
DATA_SOURCE 0 trans $0
DATA_SOURCE 1 root r btrfs_get_fs_root
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 &cow->lock
HALF_LOCKED2 &eb->lock
HALF_LOCKED2 &fs_info->reclaim_bgs_lock
TYPE_LOCK (struct btrfs_fs_info)->cleaner_mutex
TYPE_LOCK (struct btrfs_fs_info)->reclaim_bgs_lock

fs/btrfs/relocation.c relocate_tree_block() -> btrfs_record_root_in_trans()

Type Parameter Key Value
PARAM_VALUE 0 trans 4096-ptr_max
PARAM_VALUE 0 trans->block_rsv 4096-ptr_max
PARAM_VALUE 0 trans->block_rsv->failfast 0
PARAM_VALUE 0 trans->block_rsv->qgroup_rsv_reserved 0
PARAM_VALUE 0 trans->block_rsv->qgroup_rsv_size 0
PARAM_VALUE 0 trans->block_rsv->space_info 0,4096-ptr_max
PARAM_VALUE 0 trans->block_rsv->type 9
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->global_root_lock.dep_map->name 0-255
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 root 4096-ptr_max
DATA_SOURCE 0 trans $0
DATA_SOURCE 1 root r select_one_root

fs/btrfs/relocation.c select_reloc_root() -> btrfs_record_root_in_trans()

Type Parameter Key Value
PARAM_VALUE 0 trans 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->block_group_root->refs.refs.counter (-1073741824),0-s32max
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->chunk_root->refs.refs.counter (-1073741824),0-s32max
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->dev_root->refs.refs.counter (-1073741824),0-s32max
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->quota_root->refs.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 trans->fs_info->remap_root->refs.refs.counter (-1073741824),0-s32max
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->stripe_root->refs.refs.counter (-1073741824),0-s32max
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->tree_root->refs.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 trans->fs_info->uuid_root->refs.refs.counter (-1073741824),0-s32max
PARAM_VALUE 1 root 4096-ptr_max
PARAM_VALUE 1 root->root_key.objectid 0-18446744073709551607,18446744073709551609-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->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 &cow->lock
HALF_LOCKED2 &eb->lock
HALF_LOCKED2 &fs_info->reclaim_bgs_lock
TYPE_LOCK (struct btrfs_fs_info)->cleaner_mutex
TYPE_LOCK (struct btrfs_fs_info)->reclaim_bgs_lock

fs/btrfs/ioctl.c create_snapshot() -> btrfs_record_root_in_trans()

Type Parameter Key Value
PARAM_VALUE 0 trans 0-ptr_max
DATA_SOURCE 0 trans r btrfs_start_transaction
LOCK2 &fs_info->subvol_sem
TYPE_LOCK (struct btrfs_fs_info)->subvol_sem

fs/btrfs/ioctl.c create_subvol() -> btrfs_record_root_in_trans()

Type Parameter Key Value
PARAM_VALUE 0 trans 4096-ptr_max
PARAM_VALUE 0 trans->block_rsv->failfast 0
PARAM_VALUE 0 trans->block_rsv->full 0
PARAM_VALUE 0 trans->block_rsv->qgroup_rsv_reserved 0-u32max
PARAM_VALUE 0 trans->block_rsv->qgroup_rsv_size 0
PARAM_VALUE 0 trans->block_rsv->space_info 0,4096-ptr_max
PARAM_VALUE 0 trans->block_rsv->type 9
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->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->transaction->dirty_pages.inode->delalloc_inodes.next->prev 4096-ptr_max
PARAM_VALUE 0 trans->transaction->dirty_pages.inode->root->delalloc_root.next->prev 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
BUF_SIZE 1 root (-1),2888
BUF_SIZE 1 root (-1),2888
DATA_SOURCE 0 trans r btrfs_start_transaction
DATA_SOURCE 1 root r btrfs_get_new_fs_root
LOCK2 &fs_info->subvol_sem
TYPE_LOCK (struct btrfs_fs_info)->subvol_sem