projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
605109f
)
bcachefs: fix leak in bch2_gc_write_reflink_key
author
Kent Overstreet
<kent.overstreet@linux.dev>
Wed, 17 Apr 2024 06:17:21 +0000
(
02:17
-0400)
committer
Kent Overstreet
<kent.overstreet@linux.dev>
Wed, 17 Apr 2024 21:29:58 +0000
(17:29 -0400)
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/btree_gc.c
patch
|
blob
|
history
diff --git
a/fs/bcachefs/btree_gc.c
b/fs/bcachefs/btree_gc.c
index ecbd9598f69fd00e86efbe7537a134d6d4c4db06..791470b0c654553e2fbb9216fb60df1eb8c5fec2 100644
(file)
--- a/
fs/bcachefs/btree_gc.c
+++ b/
fs/bcachefs/btree_gc.c
@@
-1587,7
+1587,7
@@
static int bch2_gc_write_reflink_key(struct btree_trans *trans,
struct bkey_i *new = bch2_bkey_make_mut_noupdate(trans, k);
ret = PTR_ERR_OR_ZERO(new);
if (ret)
-
return re
t;
+
goto ou
t;
if (!r->refcount)
new->k.type = KEY_TYPE_deleted;
@@
-1595,6
+1595,7
@@
static int bch2_gc_write_reflink_key(struct btree_trans *trans,
*bkey_refcount(bkey_i_to_s(new)) = cpu_to_le64(r->refcount);
ret = bch2_trans_update(trans, iter, new, 0);
}
+out:
fsck_err:
printbuf_exit(&buf);
return ret;