From: David Sterba Date: Mon, 28 Aug 2017 15:44:41 +0000 (+0200) Subject: btrfs-progs: start framework for transaction abort X-Git-Tag: upstream/4.16.1~486 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=355a052647e3a3bab49dfea3f0281f0d5efae4ae;p=platform%2Fupstream%2Fbtrfs-progs.git btrfs-progs: start framework for transaction abort Signed-off-by: David Sterba --- diff --git a/ctree.h b/ctree.h index 4ad34f6..2818441 100644 --- a/ctree.h +++ b/ctree.h @@ -1139,6 +1139,8 @@ struct btrfs_fs_info { unsigned int avoid_sys_chunk_alloc:1; unsigned int finalize_on_close:1; + int transaction_aborted; + int (*free_extent_hook)(struct btrfs_trans_handle *trans, struct btrfs_root *root, u64 bytenr, u64 num_bytes, u64 parent, diff --git a/transaction.c b/transaction.c index 6677a22..feca06b 100644 --- a/transaction.c +++ b/transaction.c @@ -173,3 +173,7 @@ commit_tree: return 0; } +void btrfs_abort_transaction(struct btrfs_trans_handle *trans, int error) +{ + trans->fs_info->transaction_aborted = error; +} diff --git a/transaction.h b/transaction.h index ccbecce..470ee3d 100644 --- a/transaction.h +++ b/transaction.h @@ -40,5 +40,6 @@ int commit_tree_roots(struct btrfs_trans_handle *trans, struct btrfs_fs_info *fs_info); int btrfs_commit_transaction(struct btrfs_trans_handle *trans, struct btrfs_root *root); +void btrfs_abort_transaction(struct btrfs_trans_handle *trans, int error); #endif