OSDN Git Service

btrfs: transaction: describe transaction states and transitions
authorQu Wenruo <wqu@suse.com>
Thu, 22 Aug 2019 07:24:59 +0000 (15:24 +0800)
committerDavid Sterba <dsterba@suse.com>
Mon, 18 Nov 2019 11:46:50 +0000 (12:46 +0100)
commit61c047b541b56f4ec78886e9d695e0a3bbcd3834
treee37d8f8ff5d3d4d12f2c14bf8b5d97cde76eed24
parentc1499166d10ae734b5ec5cc7982bd9b9ee7f9fe6
btrfs: transaction: describe transaction states and transitions

Add an overview of the basic btrfs transaction transitions, including
the following states:

- No transaction states
- Transaction N [[TRANS_STATE_RUNNING]]
- Transaction N [[TRANS_STATE_COMMIT_START]]
- Transaction N [[TRANS_STATE_COMMIT_DOING]]
- Transaction N [[TRANS_STATE_UNBLOCKED]]
- Transaction N [[TRANS_STATE_COMPLETED]]

For each state, the comment will include:

- Basic explaination about current state
- How to go next stage
- What will happen if we call various start_transaction() functions
- Relationship to transaction N+1

This doesn't provide tech details, but serves as a cheat sheet for
reader to get into the code a little easier.

Signed-off-by: Qu Wenruo <wqu@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/transaction.c