diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2022-02-28 16:35:42 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-22 17:09:26 -0400 |
commit | f0a3a2ccabc5ae1e2c7d588a6a4f77d216b1d4cf (patch) | |
tree | e73497e869282d970457a8cae86d792f7bde39d6 /fs/bcachefs/journal_io.c | |
parent | b66fbf33425f30aacbbb95182c22d2df5b1d3b12 (diff) | |
download | lwn-f0a3a2ccabc5ae1e2c7d588a6a4f77d216b1d4cf.tar.gz lwn-f0a3a2ccabc5ae1e2c7d588a6a4f77d216b1d4cf.zip |
bcachefs: Journal seq now incremented at entry open, not close
This patch changes journal_entry_open() to initialize the new journal
entry, not __journal_entry_close().
This also means that journal_cur_seq() refers to the sequence number of
the last journal entry when we don't have an open journal entry, not the
next one.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Diffstat (limited to 'fs/bcachefs/journal_io.c')
-rw-r--r-- | fs/bcachefs/journal_io.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/bcachefs/journal_io.c b/fs/bcachefs/journal_io.c index 724a8bb69978..0d6bede8abfa 100644 --- a/fs/bcachefs/journal_io.c +++ b/fs/bcachefs/journal_io.c @@ -1368,8 +1368,6 @@ static void journal_write_done(struct closure *cl) journal_seq_pin(j, seq)->devs = w->devs_written; if (!err) { - j->seq_ondisk = seq; - if (!JSET_NO_FLUSH(w->data)) { j->flushed_seq_ondisk = seq; j->last_seq_ondisk = w->last_seq; @@ -1377,6 +1375,8 @@ static void journal_write_done(struct closure *cl) } else if (!j->err_seq || seq < j->err_seq) j->err_seq = seq; + j->seq_ondisk = seq; + /* * Updating last_seq_ondisk may let bch2_journal_reclaim_work() discard * more buckets: |