1 #ifndef __TRANSACTION__
2 #define __TRANSACTION__
4 struct btrfs_transaction {
6 unsigned long num_writers;
11 struct list_head list;
12 struct radix_tree_root dirty_pages;
13 wait_queue_head_t writer_wait;
14 wait_queue_head_t commit_wait;
17 struct btrfs_trans_handle {
20 unsigned long blocks_reserved;
21 unsigned long blocks_used;
22 struct btrfs_transaction *transaction;
27 int btrfs_end_transaction(struct btrfs_trans_handle *trans,
28 struct btrfs_root *root);
29 struct btrfs_trans_handle *btrfs_start_transaction(struct btrfs_root *root,
31 int btrfs_write_and_wait_transaction(struct btrfs_trans_handle *trans,
32 struct btrfs_root *root);
33 int btrfs_commit_tree_roots(struct btrfs_trans_handle *trans,
34 struct btrfs_root *root);