Skip to content

Commit

Permalink
bcachefs: Fix failure to flush moves before sleeping in copygc
Browse files Browse the repository at this point in the history
This fixes an apparent deadlock - rebalance would get stuck trying to
take nocow locks because they weren't being released by copygc.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
  • Loading branch information
Kent Overstreet committed Aug 24, 2024
1 parent a592cdf commit d320461
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion fs/bcachefs/movinggc.c
Original file line number Diff line number Diff line change
Expand Up @@ -383,7 +383,7 @@ static int bch2_copygc_thread(void *arg)
if (min_member_capacity == U64_MAX)
min_member_capacity = 128 * 2048;

bch2_trans_unlock_long(ctxt.trans);
move_buckets_wait(&ctxt, buckets, true);
bch2_kthread_io_clock_wait(clock, last + (min_member_capacity >> 6),
MAX_SCHEDULE_TIMEOUT);
}
Expand Down

0 comments on commit d320461

Please sign in to comment.