]> www.infradead.org Git - users/willy/pagecache.git/commitdiff
bcachefs: fix tiny leak in bch2_dev_add()
authorKent Overstreet <kent.overstreet@linux.dev>
Wed, 12 Mar 2025 21:21:31 +0000 (17:21 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Thu, 13 Mar 2025 04:23:19 +0000 (00:23 -0400)
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/super.c

index 6d97d412fed98b5e1f824e1fa352facc96bea200..0459c875e189b9b92fd8fea2ff325b5cae75ae6d 100644 (file)
@@ -1811,7 +1811,11 @@ int bch2_dev_add(struct bch_fs *c, const char *path)
                goto err_late;
 
        up_write(&c->state_lock);
-       return 0;
+out:
+       printbuf_exit(&label);
+       printbuf_exit(&errbuf);
+       bch_err_fn(c, ret);
+       return ret;
 
 err_unlock:
        mutex_unlock(&c->sb_lock);
@@ -1820,10 +1824,7 @@ err:
        if (ca)
                bch2_dev_free(ca);
        bch2_free_super(&sb);
-       printbuf_exit(&label);
-       printbuf_exit(&errbuf);
-       bch_err_fn(c, ret);
-       return ret;
+       goto out;
 err_late:
        up_write(&c->state_lock);
        ca = NULL;