diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2021-07-28 23:17:10 +0300 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-23 00:09:09 +0300 |
commit | 3cc5288a62f2657b99faab428f993673ca9d033f (patch) | |
tree | 7156457f4488f211e9b2b08380a6c567bb18935d /fs/bcachefs/btree_update.h | |
parent | a88171c9e6150e0692b392362fc2d56d83cef998 (diff) | |
download | linux-3cc5288a62f2657b99faab428f993673ca9d033f.tar.xz |
bcachefs: Change lockrestart_do() to always call bch2_trans_begin()
More consistent behaviour means less likely to trip over ourselves in
silly ways.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Diffstat (limited to 'fs/bcachefs/btree_update.h')
-rw-r--r-- | fs/bcachefs/btree_update.h | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/fs/bcachefs/btree_update.h b/fs/bcachefs/btree_update.h index b5f35a419004..a1f2d9822821 100644 --- a/fs/bcachefs/btree_update.h +++ b/fs/bcachefs/btree_update.h @@ -110,12 +110,10 @@ static inline int bch2_trans_commit(struct btree_trans *trans, ({ \ int _ret; \ \ - while (1) { \ - _ret = (_do); \ - if (_ret != -EINTR) \ - break; \ + do { \ bch2_trans_begin(_trans); \ - } \ + _ret = (_do); \ + } while (_ret == -EINTR); \ \ _ret; \ }) |