Commit d3204616 authored by Kent Overstreet's avatar Kent Overstreet

bcachefs: Fix failure to flush moves before sleeping in copygc

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: default avatarKent Overstreet <kent.overstreet@linux.dev>
parent a592cdf5
...@@ -383,7 +383,7 @@ static int bch2_copygc_thread(void *arg) ...@@ -383,7 +383,7 @@ static int bch2_copygc_thread(void *arg)
if (min_member_capacity == U64_MAX) if (min_member_capacity == U64_MAX)
min_member_capacity = 128 * 2048; 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), bch2_kthread_io_clock_wait(clock, last + (min_member_capacity >> 6),
MAX_SCHEDULE_TIMEOUT); MAX_SCHEDULE_TIMEOUT);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment