Lines Matching refs:fs_info

326 		if (root->fs_info->compress_type == BTRFS_COMPRESS_LZO)  in btrfs_ioctl_setflags()
375 struct btrfs_fs_info *fs_info = btrfs_sb(file_inode(file)->i_sb); in btrfs_ioctl_fitrim() local
381 u64 total_bytes = btrfs_super_total_bytes(fs_info->super_copy); in btrfs_ioctl_fitrim()
388 list_for_each_entry_rcu(device, &fs_info->fs_devices->devices, in btrfs_ioctl_fitrim()
406 range.len < fs_info->sb->s_blocksize) in btrfs_ioctl_fitrim()
411 ret = btrfs_trim_fs(fs_info->tree_root, &range); in btrfs_ioctl_fitrim()
456 ret = btrfs_find_free_objectid(root->fs_info->tree_root, &objectid); in create_subvol()
487 ret = btrfs_qgroup_inherit(trans, root->fs_info, 0, objectid, inherit); in create_subvol()
503 write_extent_buffer(leaf, root->fs_info->fsid, btrfs_header_fsid(), in create_subvol()
505 write_extent_buffer(leaf, root->fs_info->chunk_tree_uuid, in create_subvol()
549 ret = btrfs_insert_root(trans, root->fs_info->tree_root, &key, in create_subvol()
555 new_root = btrfs_read_fs_root_no_name(root->fs_info, &key); in create_subvol()
596 ret = btrfs_add_root_ref(trans, root->fs_info->tree_root, in create_subvol()
601 ret = btrfs_uuid_tree_add(trans, root->fs_info->uuid_root, in create_subvol()
707 spin_lock(&root->fs_info->trans_lock); in create_snapshot()
710 spin_unlock(&root->fs_info->trans_lock); in create_snapshot()
714 root->fs_info->extent_root, 1); in create_snapshot()
719 root->fs_info->extent_root); in create_snapshot()
856 down_read(&BTRFS_I(dir)->root->fs_info->subvol_sem); in btrfs_mksubvol()
871 up_read(&BTRFS_I(dir)->root->fs_info->subvol_sem); in btrfs_mksubvol()
1352 if (btrfs_defrag_cancelled(root->fs_info)) { in btrfs_defrag_file()
1353 btrfs_debug(root->fs_info, "defrag_file cancelled"); in btrfs_defrag_file()
1442 atomic_inc(&root->fs_info->async_submit_draining); in btrfs_defrag_file()
1443 while (atomic_read(&root->fs_info->nr_async_submits) || in btrfs_defrag_file()
1444 atomic_read(&root->fs_info->async_delalloc_pages)) { in btrfs_defrag_file()
1445 wait_event(root->fs_info->async_submit_wait, in btrfs_defrag_file()
1446 (atomic_read(&root->fs_info->nr_async_submits) == 0 && in btrfs_defrag_file()
1447 atomic_read(&root->fs_info->async_delalloc_pages) == 0)); in btrfs_defrag_file()
1449 atomic_dec(&root->fs_info->async_submit_draining); in btrfs_defrag_file()
1453 btrfs_set_fs_incompat(root->fs_info, COMPRESS_LZO); in btrfs_defrag_file()
1493 if (atomic_xchg(&root->fs_info->mutually_exclusive_operation_running, in btrfs_ioctl_resize()
1499 mutex_lock(&root->fs_info->volume_mutex); in btrfs_ioctl_resize()
1521 btrfs_info(root->fs_info, "resizing devid %llu", devid); in btrfs_ioctl_resize()
1524 device = btrfs_find_device(root->fs_info, devid, NULL, NULL); in btrfs_ioctl_resize()
1526 btrfs_info(root->fs_info, "resizer unable to find device %llu", in btrfs_ioctl_resize()
1533 btrfs_info(root->fs_info, in btrfs_ioctl_resize()
1590 btrfs_info_in_rcu(root->fs_info, "new size for %s is %llu", in btrfs_ioctl_resize()
1608 mutex_unlock(&root->fs_info->volume_mutex); in btrfs_ioctl_resize()
1609 atomic_set(&root->fs_info->mutually_exclusive_operation_running, 0); in btrfs_ioctl_resize()
1651 btrfs_info(BTRFS_I(file_inode(file))->root->fs_info, in btrfs_ioctl_snap_create_transid()
1760 down_read(&root->fs_info->subvol_sem); in btrfs_ioctl_subvol_getflags()
1763 up_read(&root->fs_info->subvol_sem); in btrfs_ioctl_subvol_getflags()
1808 down_write(&root->fs_info->subvol_sem); in btrfs_ioctl_subvol_setflags()
1830 btrfs_warn(root->fs_info, in btrfs_ioctl_subvol_setflags()
1844 ret = btrfs_update_root(trans, root->fs_info->tree_root, in btrfs_ioctl_subvol_setflags()
1852 up_write(&root->fs_info->subvol_sem); in btrfs_ioctl_subvol_setflags()
1875 dir_id = btrfs_super_root_dir(root->fs_info->super_copy); in may_destroy_subvol()
1876 di = btrfs_lookup_dir_item(NULL, root->fs_info->tree_root, path, in may_destroy_subvol()
1882 btrfs_err(root->fs_info, "deleting default subvolume " in may_destroy_subvol()
1893 ret = btrfs_search_slot(NULL, root->fs_info->tree_root, in may_destroy_subvol()
2069 struct btrfs_fs_info *info = BTRFS_I(inode)->root->fs_info; in search_ioctl()
2318 ret = btrfs_search_path_in_tree(BTRFS_I(inode)->root->fs_info, in btrfs_ioctl_ino_lookup()
2440 btrfs_warn(root->fs_info, in btrfs_ioctl_snap_destroy()
2447 down_write(&root->fs_info->subvol_sem); in btrfs_ioctl_snap_destroy()
2490 root->fs_info->tree_root, in btrfs_ioctl_snap_destroy()
2499 ret = btrfs_uuid_tree_rem(trans, root->fs_info->uuid_root, in btrfs_ioctl_snap_destroy()
2508 ret = btrfs_uuid_tree_rem(trans, root->fs_info->uuid_root, in btrfs_ioctl_snap_destroy()
2529 up_write(&root->fs_info->subvol_sem); in btrfs_ioctl_snap_destroy()
2587 ret = btrfs_defrag_root(root->fs_info->extent_root); in btrfs_ioctl_defrag()
2639 if (atomic_xchg(&root->fs_info->mutually_exclusive_operation_running, in btrfs_ioctl_add_dev()
2644 mutex_lock(&root->fs_info->volume_mutex); in btrfs_ioctl_add_dev()
2655 btrfs_info(root->fs_info, "disk added %s",vol_args->name); in btrfs_ioctl_add_dev()
2659 mutex_unlock(&root->fs_info->volume_mutex); in btrfs_ioctl_add_dev()
2660 atomic_set(&root->fs_info->mutually_exclusive_operation_running, 0); in btrfs_ioctl_add_dev()
2685 if (atomic_xchg(&root->fs_info->mutually_exclusive_operation_running, in btrfs_ioctl_rm_dev()
2691 mutex_lock(&root->fs_info->volume_mutex); in btrfs_ioctl_rm_dev()
2693 mutex_unlock(&root->fs_info->volume_mutex); in btrfs_ioctl_rm_dev()
2694 atomic_set(&root->fs_info->mutually_exclusive_operation_running, 0); in btrfs_ioctl_rm_dev()
2697 btrfs_info(root->fs_info, "disk deleted %s",vol_args->name); in btrfs_ioctl_rm_dev()
2710 struct btrfs_fs_devices *fs_devices = root->fs_info->fs_devices; in btrfs_ioctl_fs_info()
2719 memcpy(&fi_args->fsid, root->fs_info->fsid, sizeof(fi_args->fsid)); in btrfs_ioctl_fs_info()
2727 fi_args->nodesize = root->fs_info->super_copy->nodesize; in btrfs_ioctl_fs_info()
2728 fi_args->sectorsize = root->fs_info->super_copy->sectorsize; in btrfs_ioctl_fs_info()
2729 fi_args->clone_alignment = root->fs_info->super_copy->sectorsize; in btrfs_ioctl_fs_info()
2742 struct btrfs_fs_devices *fs_devices = root->fs_info->fs_devices; in btrfs_ioctl_dev_info()
2754 dev = btrfs_find_device(root->fs_info, di_args->devid, s_uuid, NULL); in btrfs_ioctl_dev_info()
3025 u64 bs = BTRFS_I(inode)->root->fs_info->sb->s_blocksize; in extent_same_check_offsets()
3185 u64 bs = BTRFS_I(src)->root->fs_info->sb->s_blocksize; in btrfs_ioctl_file_extent_same()
3864 u64 bs = root->fs_info->sb->s_blocksize; in btrfs_ioctl_clone()
4049 atomic_inc(&root->fs_info->open_ioctl_trans); in btrfs_ioctl_trans_start()
4060 atomic_dec(&root->fs_info->open_ioctl_trans); in btrfs_ioctl_trans_start()
4099 new_root = btrfs_read_fs_root_no_name(root->fs_info, &location); in btrfs_ioctl_default_subvol()
4119 dir_id = btrfs_super_root_dir(root->fs_info->super_copy); in btrfs_ioctl_default_subvol()
4120 di = btrfs_lookup_dir_item(trans, root->fs_info->tree_root, path, in btrfs_ioctl_default_subvol()
4125 btrfs_err(new_root->fs_info, "Umm, you don't have the default dir" in btrfs_ioctl_default_subvol()
4136 btrfs_set_fs_incompat(root->fs_info, DEFAULT_SUBVOL); in btrfs_ioctl_default_subvol()
4187 list_for_each_entry_rcu(tmp, &root->fs_info->space_info, in btrfs_ioctl_space_info()
4243 list_for_each_entry_rcu(tmp, &root->fs_info->space_info, in btrfs_ioctl_space_info()
4274 struct btrfs_block_rsv *block_rsv = &root->fs_info->global_block_rsv; in btrfs_ioctl_space_info()
4318 atomic_dec(&root->fs_info->open_ioctl_trans); in btrfs_ioctl_trans_end()
4337 transid = root->fs_info->last_trans_committed; in btrfs_ioctl_start_sync()
4386 ret = btrfs_scrub_dev(root->fs_info, sa->devid, sa->start, sa->end, in btrfs_ioctl_scrub()
4405 return btrfs_scrub_cancel(root->fs_info); in btrfs_ioctl_scrub_cancel()
4468 if (root->fs_info->sb->s_flags & MS_RDONLY) { in btrfs_ioctl_dev_replace()
4473 &root->fs_info->mutually_exclusive_operation_running, in btrfs_ioctl_dev_replace()
4479 &root->fs_info->mutually_exclusive_operation_running, in btrfs_ioctl_dev_replace()
4484 btrfs_dev_replace_status(root->fs_info, p); in btrfs_ioctl_dev_replace()
4488 ret = btrfs_dev_replace_cancel(root->fs_info, p); in btrfs_ioctl_dev_replace()
4614 ret = iterate_inodes_from_logical(loi->logical, root->fs_info, path, in btrfs_ioctl_logical_to_ino()
4634 void update_ioctl_balance_args(struct btrfs_fs_info *fs_info, int lock, in update_ioctl_balance_args() argument
4637 struct btrfs_balance_control *bctl = fs_info->balance_ctl; in update_ioctl_balance_args()
4641 if (atomic_read(&fs_info->balance_running)) in update_ioctl_balance_args()
4643 if (atomic_read(&fs_info->balance_pause_req)) in update_ioctl_balance_args()
4645 if (atomic_read(&fs_info->balance_cancel_req)) in update_ioctl_balance_args()
4653 spin_lock(&fs_info->balance_lock); in update_ioctl_balance_args()
4655 spin_unlock(&fs_info->balance_lock); in update_ioctl_balance_args()
4664 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_ioctl_balance() local
4678 if (!atomic_xchg(&fs_info->mutually_exclusive_operation_running, 1)) { in btrfs_ioctl_balance()
4679 mutex_lock(&fs_info->volume_mutex); in btrfs_ioctl_balance()
4680 mutex_lock(&fs_info->balance_mutex); in btrfs_ioctl_balance()
4691 mutex_lock(&fs_info->balance_mutex); in btrfs_ioctl_balance()
4692 if (fs_info->balance_ctl) { in btrfs_ioctl_balance()
4694 if (!atomic_read(&fs_info->balance_running)) { in btrfs_ioctl_balance()
4695 mutex_unlock(&fs_info->balance_mutex); in btrfs_ioctl_balance()
4696 if (!mutex_trylock(&fs_info->volume_mutex)) in btrfs_ioctl_balance()
4698 mutex_lock(&fs_info->balance_mutex); in btrfs_ioctl_balance()
4700 if (fs_info->balance_ctl && in btrfs_ioctl_balance()
4701 !atomic_read(&fs_info->balance_running)) { in btrfs_ioctl_balance()
4707 mutex_unlock(&fs_info->balance_mutex); in btrfs_ioctl_balance()
4708 mutex_unlock(&fs_info->volume_mutex); in btrfs_ioctl_balance()
4712 mutex_unlock(&fs_info->balance_mutex); in btrfs_ioctl_balance()
4718 mutex_unlock(&fs_info->balance_mutex); in btrfs_ioctl_balance()
4724 BUG_ON(!atomic_read(&fs_info->mutually_exclusive_operation_running)); in btrfs_ioctl_balance()
4734 if (!fs_info->balance_ctl) { in btrfs_ioctl_balance()
4739 bctl = fs_info->balance_ctl; in btrfs_ioctl_balance()
4740 spin_lock(&fs_info->balance_lock); in btrfs_ioctl_balance()
4742 spin_unlock(&fs_info->balance_lock); in btrfs_ioctl_balance()
4750 if (fs_info->balance_ctl) { in btrfs_ioctl_balance()
4761 bctl->fs_info = fs_info; in btrfs_ioctl_balance()
4801 mutex_unlock(&fs_info->balance_mutex); in btrfs_ioctl_balance()
4802 mutex_unlock(&fs_info->volume_mutex); in btrfs_ioctl_balance()
4804 atomic_set(&fs_info->mutually_exclusive_operation_running, 0); in btrfs_ioctl_balance()
4817 return btrfs_pause_balance(root->fs_info); in btrfs_ioctl_balance_ctl()
4819 return btrfs_cancel_balance(root->fs_info); in btrfs_ioctl_balance_ctl()
4828 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_ioctl_balance_progress() local
4835 mutex_lock(&fs_info->balance_mutex); in btrfs_ioctl_balance_progress()
4836 if (!fs_info->balance_ctl) { in btrfs_ioctl_balance_progress()
4847 update_ioctl_balance_args(fs_info, 1, bargs); in btrfs_ioctl_balance_progress()
4854 mutex_unlock(&fs_info->balance_mutex); in btrfs_ioctl_balance_progress()
4879 down_write(&root->fs_info->subvol_sem); in btrfs_ioctl_quota_ctl()
4880 trans = btrfs_start_transaction(root->fs_info->tree_root, 2); in btrfs_ioctl_quota_ctl()
4888 ret = btrfs_quota_enable(trans, root->fs_info); in btrfs_ioctl_quota_ctl()
4891 ret = btrfs_quota_disable(trans, root->fs_info); in btrfs_ioctl_quota_ctl()
4898 err = btrfs_commit_transaction(trans, root->fs_info->tree_root); in btrfs_ioctl_quota_ctl()
4903 up_write(&root->fs_info->subvol_sem); in btrfs_ioctl_quota_ctl()
4938 ret = btrfs_add_qgroup_relation(trans, root->fs_info, in btrfs_ioctl_qgroup_assign()
4941 ret = btrfs_del_qgroup_relation(trans, root->fs_info, in btrfs_ioctl_qgroup_assign()
4946 err = btrfs_run_qgroups(trans, root->fs_info); in btrfs_ioctl_qgroup_assign()
4948 btrfs_std_error(root->fs_info, ret, in btrfs_ioctl_qgroup_assign()
4995 ret = btrfs_create_qgroup(trans, root->fs_info, sa->qgroupid); in btrfs_ioctl_qgroup_create()
4997 ret = btrfs_remove_qgroup(trans, root->fs_info, sa->qgroupid); in btrfs_ioctl_qgroup_create()
5046 ret = btrfs_limit_qgroup(trans, root->fs_info, qgroupid, &sa->lim); in btrfs_ioctl_qgroup_limit()
5083 ret = btrfs_qgroup_rescan(root->fs_info); in btrfs_ioctl_quota_rescan()
5105 if (root->fs_info->qgroup_flags & BTRFS_QGROUP_STATUS_FLAG_RESCAN) { in btrfs_ioctl_quota_rescan_status()
5107 qsa->progress = root->fs_info->qgroup_rescan_progress.objectid; in btrfs_ioctl_quota_rescan_status()
5124 return btrfs_qgroup_wait_for_completion(root->fs_info); in btrfs_ioctl_quota_rescan_wait()
5145 down_write(&root->fs_info->subvol_sem); in _btrfs_ioctl_set_received_subvol()
5176 btrfs_uuid_tree_rem(trans, root->fs_info->uuid_root, in _btrfs_ioctl_set_received_subvol()
5188 ret = btrfs_update_root(trans, root->fs_info->tree_root, in _btrfs_ioctl_set_received_subvol()
5195 ret = btrfs_uuid_tree_add(trans, root->fs_info->uuid_root, in _btrfs_ioctl_set_received_subvol()
5211 up_write(&root->fs_info->subvol_sem); in _btrfs_ioctl_set_received_subvol()
5304 spin_lock(&root->fs_info->super_lock); in btrfs_ioctl_get_fslabel()
5305 memcpy(label, root->fs_info->super_copy->label, BTRFS_LABEL_SIZE); in btrfs_ioctl_get_fslabel()
5306 spin_unlock(&root->fs_info->super_lock); in btrfs_ioctl_get_fslabel()
5311 btrfs_warn(root->fs_info, in btrfs_ioctl_get_fslabel()
5323 struct btrfs_super_block *super_block = root->fs_info->super_copy; in btrfs_ioctl_set_fslabel()
5335 btrfs_err(root->fs_info, "unable to set label with more than %d bytes", in btrfs_ioctl_set_fslabel()
5350 spin_lock(&root->fs_info->super_lock); in btrfs_ioctl_set_fslabel()
5352 spin_unlock(&root->fs_info->super_lock); in btrfs_ioctl_set_fslabel()
5383 struct btrfs_super_block *super_block = root->fs_info->super_copy; in btrfs_ioctl_get_features()
5411 btrfs_warn(root->fs_info, in check_feature_bits()
5416 btrfs_warn(root->fs_info, in check_feature_bits()
5426 btrfs_warn(root->fs_info, in check_feature_bits()
5431 btrfs_warn(root->fs_info, in check_feature_bits()
5441 btrfs_warn(root->fs_info, in check_feature_bits()
5446 btrfs_warn(root->fs_info, in check_feature_bits()
5464 struct btrfs_super_block *super_block = root->fs_info->super_copy; in btrfs_ioctl_set_features()
5500 spin_lock(&root->fs_info->super_lock); in btrfs_ioctl_set_features()
5515 spin_unlock(&root->fs_info->super_lock); in btrfs_ioctl_set_features()
5590 ret = btrfs_start_delalloc_roots(root->fs_info, 0, -1); in btrfs_ioctl()
5599 wake_up_process(root->fs_info->transaction_kthread); in btrfs_ioctl()