diff options
Diffstat (limited to 'libbcachefs/io_misc.c')
-rw-r--r-- | libbcachefs/io_misc.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libbcachefs/io_misc.c b/libbcachefs/io_misc.c index 4ec979b4..2cf62977 100644 --- a/libbcachefs/io_misc.c +++ b/libbcachefs/io_misc.c @@ -125,8 +125,12 @@ err_noprint: bch2_bkey_buf_exit(&old, c); if (closure_nr_remaining(&cl) != 1) { - bch2_trans_unlock(trans); - closure_sync(&cl); + bch2_trans_unlock_long(trans); + + if (closure_sync_timeout(&cl, HZ * 10)) { + bch2_print_allocator_stuck(c); + closure_sync(&cl); + } } return ret; |