diff options
author | Chris Mason <chris.mason@oracle.com> | 2007-04-30 21:25:45 +0200 |
---|---|---|
committer | David Woodhouse <dwmw2@hera.kernel.org> | 2007-04-30 21:25:45 +0200 |
commit | 31f3c99b73483f7b738a886c552050cbd6128ff3 (patch) | |
tree | 35c961e01b8fe25525b9ac4a691fd931ac1dbe59 /fs/btrfs/transaction.h | |
parent | Btrfs: prealloc more blocks for the extent map (diff) | |
download | linux-31f3c99b73483f7b738a886c552050cbd6128ff3.tar.xz linux-31f3c99b73483f7b738a886c552050cbd6128ff3.zip |
Btrfs: allocator improvements, inode block groups
Signed-off-by: Chris Mason <chris.mason@oracle.com>
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 @@ #ifndef __TRANSACTION__ #define __TRANSACTION__ +#include "btrfs_inode.h" struct btrfs_transaction { u64 transid; @@ -20,10 +21,24 @@ struct btrfs_trans_handle { unsigned long blocks_reserved; unsigned long blocks_used; struct btrfs_transaction *transaction; + struct btrfs_block_group_cache *block_group; int magic2; }; +static inline void btrfs_set_trans_block_group(struct btrfs_trans_handle *trans, + struct inode *inode) +{ + trans->block_group = BTRFS_I(inode)->block_group; +} + +static inline void btrfs_update_inode_block_group(struct + btrfs_trans_handle *trans, + struct inode *inode) +{ + BTRFS_I(inode)->block_group = trans->block_group; +} + int btrfs_end_transaction(struct btrfs_trans_handle *trans, struct btrfs_root *root); struct btrfs_trans_handle *btrfs_start_transaction(struct btrfs_root *root, |