bcachefs: Add flushed_seq_ondisk to journal_debug_to_text()
authorKent Overstreet <kent.overstreet@gmail.com>
Wed, 10 Feb 2021 00:54:04 +0000 (19:54 -0500)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:08:53 +0000 (17:08 -0400)
Also, make the wait in bch2_journal_flush_seq() interruptible, not just
killable.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/journal.c

index 7c805dd741804fbba5c85ed55ab302ede544ff39..b33d985fa020d542b17c5585d5faea7ef9ed42d3 100644 (file)
@@ -639,9 +639,10 @@ int bch2_journal_flush_seq(struct journal *j, u64 seq)
        u64 start_time = local_clock();
        int ret, ret2;
 
-       ret = wait_event_killable(j->wait, (ret2 = bch2_journal_flush_seq_async(j, seq, NULL)));
+       ret = wait_event_interruptible(j->wait, (ret2 = bch2_journal_flush_seq_async(j, seq, NULL)));
 
-       bch2_time_stats_update(j->flush_seq_time, start_time);
+       if (!ret)
+               bch2_time_stats_update(j->flush_seq_time, start_time);
 
        return ret ?: ret2 < 0 ? ret2 : 0;
 }
@@ -1160,6 +1161,7 @@ void __bch2_journal_debug_to_text(struct printbuf *out, struct journal *j)
               "seq:\t\t\t%llu\n"
               "last_seq:\t\t%llu\n"
               "last_seq_ondisk:\t%llu\n"
+              "flushed_seq_ondisk:\t%llu\n"
               "prereserved:\t\t%u/%u\n"
               "nr flush writes:\t%llu\n"
               "nr noflush writes:\t%llu\n"
@@ -1172,6 +1174,7 @@ void __bch2_journal_debug_to_text(struct printbuf *out, struct journal *j)
               journal_cur_seq(j),
               journal_last_seq(j),
               j->last_seq_ondisk,
+              j->flushed_seq_ondisk,
               j->prereserved.reserved,
               j->prereserved.remaining,
               j->nr_flush_writes,