diff options
Diffstat (limited to 'fs/btrfs/transaction.h')
-rw-r--r-- | fs/btrfs/transaction.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/fs/btrfs/transaction.h b/fs/btrfs/transaction.h index afe42d167cee..b5378119e76c 100644 --- a/fs/btrfs/transaction.h +++ b/fs/btrfs/transaction.h | |||
@@ -1,5 +1,6 @@ | |||
1 | #ifndef __TRANSACTION__ | 1 | #ifndef __TRANSACTION__ |
2 | #define __TRANSACTION__ | 2 | #define __TRANSACTION__ |
3 | #include "btrfs_inode.h" | ||
3 | 4 | ||
4 | struct btrfs_transaction { | 5 | struct btrfs_transaction { |
5 | u64 transid; | 6 | u64 transid; |
@@ -20,10 +21,24 @@ struct btrfs_trans_handle { | |||
20 | unsigned long blocks_reserved; | 21 | unsigned long blocks_reserved; |
21 | unsigned long blocks_used; | 22 | unsigned long blocks_used; |
22 | struct btrfs_transaction *transaction; | 23 | struct btrfs_transaction *transaction; |
24 | struct btrfs_block_group_cache *block_group; | ||
23 | int magic2; | 25 | int magic2; |
24 | }; | 26 | }; |
25 | 27 | ||
26 | 28 | ||
29 | static inline void btrfs_set_trans_block_group(struct btrfs_trans_handle *trans, | ||
30 | struct inode *inode) | ||
31 | { | ||
32 | trans->block_group = BTRFS_I(inode)->block_group; | ||
33 | } | ||
34 | |||
35 | static inline void btrfs_update_inode_block_group(struct | ||
36 | btrfs_trans_handle *trans, | ||
37 | struct inode *inode) | ||
38 | { | ||
39 | BTRFS_I(inode)->block_group = trans->block_group; | ||
40 | } | ||
41 | |||
27 | int btrfs_end_transaction(struct btrfs_trans_handle *trans, | 42 | int btrfs_end_transaction(struct btrfs_trans_handle *trans, |
28 | struct btrfs_root *root); | 43 | struct btrfs_root *root); |
29 | struct btrfs_trans_handle *btrfs_start_transaction(struct btrfs_root *root, | 44 | struct btrfs_trans_handle *btrfs_start_transaction(struct btrfs_root *root, |