Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 318875
b: refs/heads/master
c: 416ac51
h: refs/heads/master
i:
  318873: 246440f
  318871: 26f5d55
v: v3
  • Loading branch information
Arne Jansen authored and Jan Schmidt committed Jul 10, 2012
1 parent 25d9eb7 commit 6f3a2f0
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 20897f5c86b9d2b77baea1d48eda7fa4ac217279
refs/heads/master: 416ac51da90e98daaac17e1f359a6c5591f7f5bd
24 changes: 24 additions & 0 deletions trunk/fs/btrfs/ctree.h
Original file line number Diff line number Diff line change
Expand Up @@ -1120,6 +1120,7 @@ struct btrfs_fs_info {
struct btrfs_root *dev_root;
struct btrfs_root *fs_root;
struct btrfs_root *csum_root;
struct btrfs_root *quota_root;

/* the log root tree is a directory of all the other log roots */
struct btrfs_root *log_root_tree;
Expand Down Expand Up @@ -1374,6 +1375,29 @@ struct btrfs_fs_info {
#ifdef CONFIG_BTRFS_FS_CHECK_INTEGRITY
u32 check_integrity_print_mask;
#endif
/*
* quota information
*/
unsigned int quota_enabled:1;

/*
* quota_enabled only changes state after a commit. This holds the
* next state.
*/
unsigned int pending_quota_state:1;

/* is qgroup tracking in a consistent state? */
u64 qgroup_flags;

/* holds configuration and tracking. Protected by qgroup_lock */
struct rb_root qgroup_tree;
spinlock_t qgroup_lock;

/* list of dirty qgroups to be written at next commit */
struct list_head dirty_qgroups;

/* used by btrfs_qgroup_record_ref for an efficient tree traversal */
u64 qgroup_seq;

/* filesystem state */
u64 fs_state;
Expand Down
7 changes: 7 additions & 0 deletions trunk/fs/btrfs/disk-io.c
Original file line number Diff line number Diff line change
Expand Up @@ -2110,6 +2110,13 @@ int open_ctree(struct super_block *sb,
init_rwsem(&fs_info->cleanup_work_sem);
init_rwsem(&fs_info->subvol_sem);

spin_lock_init(&fs_info->qgroup_lock);
fs_info->qgroup_tree = RB_ROOT;
INIT_LIST_HEAD(&fs_info->dirty_qgroups);
fs_info->qgroup_seq = 1;
fs_info->quota_enabled = 0;
fs_info->pending_quota_state = 0;

btrfs_init_free_cluster(&fs_info->meta_alloc_cluster);
btrfs_init_free_cluster(&fs_info->data_alloc_cluster);

Expand Down

0 comments on commit 6f3a2f0

Please sign in to comment.