]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/btree_update.h
Update bcachefs sources to b964c6cba8 bcachefs: Change lockrestart_do() to always...
[bcachefs-tools-debian] / libbcachefs / btree_update.h
index bab135fae0b0bbd9225c308eb5b9fda8868a70c4..217b52e1a1683a7977198acce09e3f9668eab296 100644 (file)
@@ -15,7 +15,6 @@ bool bch2_btree_bset_insert_key(struct btree_iter *, struct btree *,
 void bch2_btree_add_journal_pin(struct bch_fs *, struct btree *, u64);
 
 enum btree_insert_flags {
-       __BTREE_INSERT_NOUNLOCK,
        __BTREE_INSERT_NOFAIL,
        __BTREE_INSERT_NOCHECK_RW,
        __BTREE_INSERT_LAZY_RW,
@@ -29,11 +28,6 @@ enum btree_insert_flags {
        __BCH_HASH_SET_MUST_REPLACE,
 };
 
-/*
- * Don't drop locks _after_ successfully updating btree:
- */
-#define BTREE_INSERT_NOUNLOCK          (1 << __BTREE_INSERT_NOUNLOCK)
-
 /* Don't check for -ENOSPC: */
 #define BTREE_INSERT_NOFAIL            (1 << __BTREE_INSERT_NOFAIL)
 
@@ -110,12 +104,10 @@ static inline int bch2_trans_commit(struct btree_trans *trans,
 ({                                                                     \
        int _ret;                                                       \
                                                                        \
-       while (1) {                                                     \
+       do {                                                            \
+               bch2_trans_begin(_trans);                               \
                _ret = (_do);                                           \
-               if (_ret != -EINTR)                                     \
-                       break;                                          \
-               bch2_trans_reset(_trans, 0);                            \
-       }                                                               \
+       } while (_ret == -EINTR);                                       \
                                                                        \
        _ret;                                                           \
 })