diff options
author | Kent Overstreet <kent.overstreet@linux.dev> | 2023-02-09 18:34:08 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-02-09 18:36:24 -0500 |
commit | a104f0407b7f5de54972389ef10e11dd8c525a96 (patch) | |
tree | 07c993aeedb4bfe4a52d6725a689a6b018d2b483 /libbcachefs/journal_types.h | |
parent | abe1c3bc8e116879a258bff2316cfb0586f15fec (diff) |
Update bcachefs sources to ea93c26e98 fixup! bcachefs: We can handle missing btree roots for all alloc btrees
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'libbcachefs/journal_types.h')
-rw-r--r-- | libbcachefs/journal_types.h | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/libbcachefs/journal_types.h b/libbcachefs/journal_types.h index c8729cb3..0e6bde66 100644 --- a/libbcachefs/journal_types.h +++ b/libbcachefs/journal_types.h @@ -182,29 +182,32 @@ typedef DARRAY(u64) darray_u64; /* Embedded in struct bch_fs */ struct journal { /* Fastpath stuff up front: */ - - unsigned long flags; + struct { union journal_res_state reservations; enum journal_watermark watermark; + union journal_preres_state prereserved; + + } __aligned(SMP_CACHE_BYTES); + + unsigned long flags; + /* Max size of current journal entry */ unsigned cur_entry_u64s; unsigned cur_entry_sectors; + /* Reserved space in journal entry to be used just prior to write */ + unsigned entry_u64s_reserved; + + /* * 0, or -ENOSPC if waiting on journal reclaim, or -EROFS if * insufficient devices: */ enum journal_errors cur_entry_error; - union journal_preres_state prereserved; - - /* Reserved space in journal entry to be used just prior to write */ - unsigned entry_u64s_reserved; - unsigned buf_size_want; - /* * We may queue up some things to be journalled (log messages) before * the journal has actually started - stash them here: @@ -298,15 +301,15 @@ struct journal { u64 nr_flush_writes; u64 nr_noflush_writes; - struct time_stats *flush_write_time; - struct time_stats *noflush_write_time; - struct time_stats *blocked_time; - struct time_stats *flush_seq_time; + struct bch2_time_stats *flush_write_time; + struct bch2_time_stats *noflush_write_time; + struct bch2_time_stats *blocked_time; + struct bch2_time_stats *flush_seq_time; #ifdef CONFIG_DEBUG_LOCK_ALLOC struct lockdep_map res_map; #endif -}; +} __aligned(SMP_CACHE_BYTES); /* * Embedded in struct bch_dev. First three fields refer to the array of journal |