summaryrefslogtreecommitdiff
path: root/libbcachefs/journal_types.h
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2018-08-15 19:41:24 -0400
committerKent Overstreet <kent.overstreet@gmail.com>2018-08-15 20:00:21 -0400
commitcef2f30ae2a25df41704b9b06fc13882d737cc27 (patch)
tree245f69c300067dc638eff7c6bc5bbc545fdf81f1 /libbcachefs/journal_types.h
parent9c62b2b4f11374cbffe88e0c31b9b1ab32a2863a (diff)
Update bcachefs sources to 15f6e66e86 bcachefs: pass around bset_tree less
Diffstat (limited to 'libbcachefs/journal_types.h')
-rw-r--r--libbcachefs/journal_types.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/libbcachefs/journal_types.h b/libbcachefs/journal_types.h
index effbeece..26702482 100644
--- a/libbcachefs/journal_types.h
+++ b/libbcachefs/journal_types.h
@@ -47,7 +47,7 @@ typedef void (*journal_pin_flush_fn)(struct journal *j,
struct journal_entry_pin {
struct list_head list;
journal_pin_flush_fn flush;
- struct journal_entry_pin_list *pin_list;
+ u64 seq;
};
/* corresponds to a btree node with a blacklisted bset: */
@@ -150,7 +150,8 @@ struct journal {
/* Sequence number of most recent journal entry (last entry in @pin) */
atomic64_t seq;
- /* last_seq from the most recent journal entry written */
+ /* seq, last_seq from the most recent journal entry successfully written */
+ u64 seq_ondisk;
u64 last_seq_ondisk;
/*
@@ -173,6 +174,10 @@ struct journal {
u64 front, back, size, mask;
struct journal_entry_pin_list *data;
} pin;
+
+ struct journal_entry_pin *flush_in_progress;
+ wait_queue_head_t pin_flush_wait;
+
u64 replay_journal_seq;
struct mutex blacklist_lock;