summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/super.c
diff options
context:
space:
mode:
authorDavid Sterba <dsterba@suse.com>2020-02-05 17:34:34 +0100
committerDavid Sterba <dsterba@suse.com>2020-03-23 17:01:34 +0100
commitbf31f87f71cc7a89871ab0a451c047a0c0144bf1 (patch)
treefdca5c6ceff6356ea7ac35b8125fb30f2153e663 /fs/btrfs/super.c
parentb908c334e7a419e5cd08a45d31284b4a93de3bd7 (diff)
downloadlinux-bf31f87f71cc7a89871ab0a451c047a0c0144bf1.tar.gz
linux-bf31f87f71cc7a89871ab0a451c047a0c0144bf1.tar.bz2
linux-bf31f87f71cc7a89871ab0a451c047a0c0144bf1.zip
btrfs: add wrapper for transaction abort predicate
The status of aborted transaction can change between calls and it needs to be accessed by READ_ONCE. Add a helper that also wraps the unlikely hint. Reviewed-by: Josef Bacik <josef@toxicpanda.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/super.c')
-rw-r--r--fs/btrfs/super.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index 6420df4e86d7..5c16b4bcde9b 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -244,7 +244,7 @@ void __btrfs_abort_transaction(struct btrfs_trans_handle *trans,
{
struct btrfs_fs_info *fs_info = trans->fs_info;
- trans->aborted = errno;
+ WRITE_ONCE(trans->aborted, errno);
/* Nothing used. The other threads that have joined this
* transaction may be able to continue. */
if (!trans->dirty && list_empty(&trans->new_bgs)) {