diff options
Diffstat (limited to 'libbcachefs/reflink.c')
-rw-r--r-- | libbcachefs/reflink.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/libbcachefs/reflink.c b/libbcachefs/reflink.c index a2cc0785..e9a6a5f6 100644 --- a/libbcachefs/reflink.c +++ b/libbcachefs/reflink.c @@ -157,8 +157,10 @@ static int bch2_make_extent_indirect(struct btree_trans *trans, bch2_trans_update(trans, reflink_iter, r_v, 0); r_p = bch2_trans_kmalloc(trans, sizeof(*r_p)); - if (IS_ERR(r_p)) - return PTR_ERR(r_p); + if (IS_ERR(r_p)) { + ret = PTR_ERR(r_p); + goto err; + } orig->k.type = KEY_TYPE_reflink_p; r_p = bkey_i_to_reflink_p(orig); @@ -204,9 +206,6 @@ s64 bch2_remap_range(struct bch_fs *c, u64 src_done, dst_done; int ret = 0, ret2 = 0; - if (!c->opts.reflink) - return -EOPNOTSUPP; - if (!percpu_ref_tryget(&c->writes)) return -EROFS; |