]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/journal.c
Update bcachefs sources to 24c6361e20 bcachefs: Fix a trans path overflow in bch2_btr...
[bcachefs-tools-debian] / libbcachefs / journal.c
index 3e8972c22b5c3f8ebe9d36184aecf93e0a4cf806..ab594623341f8c76c7c25fcfc94220037041104e 100644 (file)
@@ -809,14 +809,16 @@ static int __bch2_set_nr_journal_buckets(struct bch_dev *ca, unsigned nr,
                if (new_fs) {
                        bu[nr_got] = bch2_bucket_alloc_new_fs(ca);
                        if (bu[nr_got] < 0) {
-                               ret = -ENOSPC;
+                               ret = -BCH_ERR_ENOSPC_bucket_alloc;
                                break;
                        }
                } else {
                        ob[nr_got] = bch2_bucket_alloc(c, ca, RESERVE_none,
                                               false, cl);
                        if (IS_ERR(ob[nr_got])) {
-                               ret = cl ? -EAGAIN : -ENOSPC;
+                               ret = cl
+                                       ? -EAGAIN
+                                       : -BCH_ERR_ENOSPC_bucket_alloc;
                                break;
                        }
 
@@ -943,10 +945,11 @@ int bch2_set_nr_journal_buckets(struct bch_fs *c, struct bch_dev *ca,
                 * reservation to ensure we'll actually be able to allocate:
                 */
 
-               if (bch2_disk_reservation_get(c, &disk_res,
-                                             bucket_to_sector(ca, nr - ja->nr), 1, 0)) {
+               ret = bch2_disk_reservation_get(c, &disk_res,
+                                               bucket_to_sector(ca, nr - ja->nr), 1, 0);
+               if (ret) {
                        mutex_unlock(&c->sb_lock);
-                       return -ENOSPC;
+                       return ret;
                }
 
                ret = __bch2_set_nr_journal_buckets(ca, nr, false, &cl);