]> git.dujemihanovic.xyz Git - linux.git/commitdiff
bcachefs: Fix rcu_read_lock() leak in drop_extra_replicas
authorKent Overstreet <kent.overstreet@linux.dev>
Tue, 11 Jun 2024 22:59:08 +0000 (18:59 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Tue, 11 Jun 2024 22:59:08 +0000 (18:59 -0400)
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/data_update.c

index 0d807c2ce9c67a00ffc36fef20d1b3c68aecc2c4..1a0072eef109b57934e7aa8be7650a2856a3ffc2 100644 (file)
@@ -202,9 +202,8 @@ restart_drop_conflicting_replicas:
                        bch2_bkey_durability(c, bkey_i_to_s_c(&new->k_i));
 
                /* Now, drop excess replicas: */
-restart_drop_extra_replicas:
-
                rcu_read_lock();
+restart_drop_extra_replicas:
                bkey_for_each_ptr_decode(old.k, bch2_bkey_ptrs(bkey_i_to_s(insert)), p, entry) {
                        unsigned ptr_durability = bch2_extent_ptr_durability(c, &p);