Searched refs:journal (Results 1 - 25 of 102) sorted by relevance

12345

/linux-master/drivers/md/dm-vdo/
H A Drecovery-journal.c6 #include "recovery-journal.h"
30 * The number of reserved blocks must be large enough to prevent a new recovery journal
32 * journal. Currently, that means reserving enough space for all 2048 data_vios.
40 * A lock_counter is intended to keep all of the locks for the blocks in the recovery journal. The
49 * Lock sets are laid out with the set for recovery journal first, followed by the logical zones,
61 * @journal: The recovery journal.
67 static inline atomic_t *get_zone_count_ptr(struct recovery_journal *journal, argument
72 ? &journal->lock_counter.logical_zone_counts[lock_number]
73 : &journal
85 get_counter(struct recovery_journal *journal, block_count_t lock_number, enum vdo_zone_type zone_type, zone_count_t zone_id) argument
101 get_decrement_counter(struct recovery_journal *journal, block_count_t lock_number) argument
114 is_journal_zone_locked(struct recovery_journal *journal, block_count_t lock_number) argument
138 vdo_release_recovery_journal_block_reference(struct recovery_journal *journal, sequence_number_t sequence_number, enum vdo_zone_type zone_type, zone_count_t zone_id) argument
200 pop_free_list(struct recovery_journal *journal) argument
254 assert_on_journal_thread(struct recovery_journal *journal, const char *function_name) argument
278 has_block_waiters(struct recovery_journal *journal) argument
319 is_read_only(struct recovery_journal *journal) argument
328 check_for_drain_complete(struct recovery_journal *journal) argument
392 enter_journal_read_only_mode(struct recovery_journal *journal, int error_code) argument
408 vdo_get_recovery_journal_current_sequence_number(struct recovery_journal *journal) argument
421 get_recovery_journal_head(const struct recovery_journal *journal) argument
442 check_slab_journal_commit_threshold(struct recovery_journal *journal) argument
460 finish_reaping(struct recovery_journal *journal) argument
483 struct recovery_journal *journal = completion->parent; local
497 struct recovery_journal *journal = completion->parent; local
507 struct recovery_journal *journal = vio->completion.parent; local
517 initialize_journal_state(struct recovery_journal *journal) argument
558 struct recovery_journal *journal = (struct recovery_journal *) completion->parent; local
587 initialize_lock_counter(struct recovery_journal *journal, struct vdo *vdo) argument
639 set_journal_tail(struct recovery_journal *journal, sequence_number_t tail) argument
656 initialize_recovery_block(struct vdo *vdo, struct recovery_journal *journal, struct recovery_journal_block *block) argument
709 struct recovery_journal *journal; local
783 vdo_free_recovery_journal(struct recovery_journal *journal) argument
828 vdo_initialize_recovery_journal_post_repair(struct recovery_journal *journal, u64 recovery_count, sequence_number_t tail, block_count_t logical_blocks_used, block_count_t block_map_data_blocks) argument
848 vdo_get_journal_block_map_data_blocks_used(struct recovery_journal *journal) argument
859 vdo_get_recovery_journal_thread_id(struct recovery_journal *journal) argument
870 vdo_open_recovery_journal(struct recovery_journal *journal, struct slab_depot *depot, struct block_map *block_map) argument
886 vdo_record_recovery_journal(const struct recovery_journal *journal) argument
941 advance_tail(struct recovery_journal *journal) argument
985 initialize_lock_count(struct recovery_journal *journal) argument
1005 prepare_to_assign_entry(struct recovery_journal *journal) argument
1043 schedule_block_write(struct recovery_journal *journal, struct recovery_journal_block *block) argument
1065 update_usages(struct recovery_journal *journal, struct data_vio *data_vio) argument
1088 struct recovery_journal *journal = block->journal; local
1119 assign_entries(struct recovery_journal *journal) argument
1145 struct recovery_journal *journal = block->journal; local
1174 struct recovery_journal *journal = context; local
1209 notify_commit_waiters(struct recovery_journal *journal) argument
1234 recycle_journal_blocks(struct recovery_journal *journal) argument
1267 struct recovery_journal *journal = block->journal; local
1305 struct recovery_journal *journal = block->journal; local
1319 struct recovery_journal *journal = block->journal; local
1372 struct recovery_journal *journal = block->journal; local
1407 write_blocks(struct recovery_journal *journal) argument
1445 vdo_add_recovery_journal_entry(struct recovery_journal *journal, struct data_vio *data_vio) argument
1478 is_lock_locked(struct recovery_journal *journal, block_count_t lock_number, enum vdo_zone_type zone_type) argument
1498 reap_recovery_journal(struct recovery_journal *journal) argument
1556 vdo_acquire_recovery_journal_block_reference(struct recovery_journal *journal, sequence_number_t sequence_number, enum vdo_zone_type zone_type, zone_count_t zone_id) argument
1595 vdo_release_journal_entry_lock(struct recovery_journal *journal, sequence_number_t sequence_number) argument
1632 vdo_drain_recovery_journal(struct recovery_journal *journal, const struct admin_state_code *operation, struct vdo_completion *parent) argument
1668 vdo_resume_recovery_journal(struct recovery_journal *journal, struct vdo_completion *parent) argument
1699 vdo_get_recovery_journal_logical_blocks_used(const struct recovery_journal *journal) argument
1711 vdo_get_recovery_journal_statistics(const struct recovery_journal *journal) argument
1734 vdo_dump_recovery_journal_statistics(const struct recovery_journal *journal) argument
[all...]
H A Drecovery-journal.h22 * DOC: recovery journal.
26 * write amplification of writes by providing amortization of slab journal and block map page
29 * The recovery journal has a single dedicated queue and thread for performing all journal updates.
31 * fine-grained locking for recovery journal structures.
33 * The journal consists of a set of on-disk blocks arranged as a circular log with monotonically
35 * journal. The 'head' is the oldest active block in the journal. The 'tail' is the end of the
37 * receiving entries. In an empty journal, head == active == tail. Once any entries are added, tail
40 * The journal als
122 struct recovery_journal *journal; member in struct:recovery_journal_block
229 vdo_get_recovery_journal_block_number(const struct recovery_journal *journal, sequence_number_t sequence) argument
247 vdo_compute_recovery_journal_check_byte(const struct recovery_journal *journal, sequence_number_t sequence) argument
[all...]
H A Dslab-depot.c30 #include "recovery-journal.h"
42 * get_lock() - Get the lock object for a slab journal block by sequence number.
43 * @journal: vdo_slab journal to retrieve from.
48 static inline struct journal_lock * __must_check get_lock(struct slab_journal *journal, argument
51 return &journal->locks[sequence_number % journal->size];
62 * @journal: The journal to check.
66 static inline bool __must_check must_make_entries_to_flush(struct slab_journal *journal) argument
78 is_reaping(struct slab_journal *journal) argument
87 initialize_tail_block(struct slab_journal *journal) argument
100 initialize_journal_state(struct slab_journal *journal) argument
115 block_is_full(struct slab_journal *journal) argument
147 mark_slab_journal_dirty(struct slab_journal *journal, sequence_number_t lock) argument
163 mark_slab_journal_clean(struct slab_journal *journal) argument
172 struct slab_journal *journal = &slab->journal; local
399 finish_reaping(struct slab_journal *journal) argument
415 struct slab_journal *journal = completion->parent; local
437 struct slab_journal *journal = vio->completion.parent; local
451 struct slab_journal *journal = local
464 reap_slab_journal(struct slab_journal *journal) argument
521 adjust_slab_journal_block_reference(struct slab_journal *journal, sequence_number_t sequence_number, int adjustment) argument
561 struct slab_journal *journal = local
622 update_tail_block_location(struct slab_journal *journal) argument
661 struct slab_journal *journal = &slab->journal; local
697 struct slab_journal *journal = completion->parent; local
730 struct slab_journal *journal = vio->completion.parent; local
746 struct slab_journal *journal = local
803 commit_tail(struct slab_journal *journal) argument
903 add_entry(struct slab_journal *journal, physical_block_number_t pbn, enum journal_operation operation, bool increment, struct journal_point recovery_point) argument
940 journal_length(const struct slab_journal *journal) argument
962 struct slab_journal *journal = &slab->journal; local
1009 requires_reaping(const struct slab_journal *journal) argument
1220 reclaim_journal_space(struct slab_journal *journal) argument
1695 struct slab_journal *journal = context; local
1753 is_next_entry_a_block_map_increment(struct slab_journal *journal) argument
1769 add_entries(struct slab_journal *journal) argument
2411 struct slab_journal *journal = completion->parent; local
2440 struct slab_journal *journal = vio->completion.parent; local
2449 struct slab_journal *journal = completion->parent; local
2467 struct slab_journal *journal = local
2495 struct slab_journal *journal = &slab->journal; local
2828 struct slab_journal *journal = &slab->journal; local
3534 struct slab_journal *journal; local
3586 struct slab_journal *journal = &slab->journal; local
3660 struct slab_journal *journal = &slab->journal; local
3849 release_recovery_journal_lock(struct slab_journal *journal, sequence_number_t recovery_lock) argument
3876 struct slab_journal *journal, *tmp; local
[all...]
/linux-master/fs/jbd2/
H A Djournal.c3 * linux/fs/jbd2/journal.c
9 * Generic filesystem journal-writing code; part of the ext2fs
16 * We do not actually manage the physical storage of the journal in this
17 * file: that is left to a per-journal policy function, which allows us
18 * to store the journal within a filesystem-specified area for ext2
137 journal_t *journal = from_timer(journal, t, j_commit_timer); local
139 wake_up_process(journal->j_task);
144 * journal.
149 * filesystem to disk. The journal threa
162 journal_t *journal = arg; local
264 jbd2_journal_start_thread(journal_t *journal) argument
277 journal_kill_thread(journal_t *journal) argument
339 journal_t *journal = transaction->t_journal; local
469 __jbd2_log_start_commit(journal_t *journal, tid_t target) argument
506 jbd2_log_start_commit(journal_t *journal, tid_t tid) argument
523 __jbd2_journal_force_commit(journal_t *journal) argument
563 jbd2_journal_force_commit_nested(journal_t *journal) argument
578 jbd2_journal_force_commit(journal_t *journal) argument
594 jbd2_journal_start_commit(journal_t *journal, tid_t *ptid) argument
627 jbd2_trans_will_send_data_barrier(journal_t *journal, tid_t tid) argument
666 jbd2_log_wait_commit(journal_t *journal, tid_t tid) argument
715 jbd2_fc_begin_commit(journal_t *journal, tid_t tid) argument
755 __jbd2_fc_end_commit(journal_t *journal, tid_t tid, bool fallback) argument
771 jbd2_fc_end_commit(journal_t *journal) argument
777 jbd2_fc_end_commit_fallback(journal_t *journal) argument
790 jbd2_transaction_committed(journal_t *journal, tid_t tid) argument
813 jbd2_complete_transaction(journal_t *journal, tid_t tid) argument
841 jbd2_journal_next_log_block(journal_t *journal, unsigned long long *retp) argument
858 jbd2_fc_get_buf(journal_t *journal, struct buffer_head **bh_out) argument
900 jbd2_fc_wait_bufs(journal_t *journal, int num_blks) argument
930 jbd2_fc_release_bufs(journal_t *journal) argument
956 jbd2_journal_bmap(journal_t *journal, unsigned long blocknr, unsigned long long *retp) argument
999 journal_t *journal = transaction->t_journal; local
1051 jbd2_journal_get_log_tail(journal_t *journal, tid_t *tid, unsigned long *block) argument
1090 __jbd2_update_log_tail(journal_t *journal, tid_t tid, unsigned long block) argument
1132 jbd2_update_log_tail(journal_t *journal, tid_t tid, unsigned long block) argument
1141 journal_t *journal; member in struct:jbd2_stats_proc_session
1208 journal_t *journal = pde_data(inode); local
1256 jbd2_stats_proc_init(journal_t *journal) argument
1265 jbd2_stats_proc_exit(journal_t *journal) argument
1292 journal_t *journal = shrink->private_data; local
1318 journal_t *journal = shrink->private_data; local
1332 journal_fail_superblock(journal_t *journal) argument
1343 journal_check_superblock(journal_t *journal) argument
1439 journal_revoke_records_per_block(journal_t *journal) argument
1458 journal_load_superblock(journal_t *journal) argument
1524 journal_t *journal; local
1647 journal_t *journal; local
1671 journal_t *journal; local
1708 journal_reset(journal_t *journal) argument
1788 jbd2_write_superblock(journal_t *journal, blk_opf_t write_flags) argument
1856 jbd2_journal_update_sb_log_tail(journal_t *journal, tid_t tail_tid, unsigned long tail_block, blk_opf_t write_flags) argument
1900 jbd2_mark_journal_empty(journal_t *journal, blk_opf_t write_flags) argument
1950 __jbd2_journal_erase(journal_t *journal, unsigned int flags) argument
2047 jbd2_journal_update_sb_errno(journal_t *journal) argument
2071 jbd2_journal_load(journal_t *journal) argument
2124 jbd2_journal_destroy(journal_t *journal) argument
2217 jbd2_journal_check_used_features(journal_t *journal, unsigned long compat, unsigned long ro, unsigned long incompat) argument
2248 jbd2_journal_check_available_features(journal_t *journal, unsigned long compat, unsigned long ro, unsigned long incompat) argument
2266 jbd2_journal_initialize_fast_commit(journal_t *journal) argument
2306 jbd2_journal_set_features(journal_t *journal, unsigned long compat, unsigned long ro, unsigned long incompat) argument
2396 jbd2_journal_clear_features(journal_t *journal, unsigned long compat, unsigned long ro, unsigned long incompat) argument
2428 jbd2_journal_flush(journal_t *journal, unsigned int flags) argument
2511 jbd2_journal_wipe(journal_t *journal, int write) argument
2575 jbd2_journal_abort(journal_t *journal, int errno) argument
2636 jbd2_journal_errno(journal_t *journal) argument
2656 jbd2_journal_clear_err(journal_t *journal) argument
2676 jbd2_journal_ack_err(journal_t *journal) argument
2692 journal_tag_bytes(journal_t *journal) argument
3040 jbd2_journal_release_jbd_inode(journal_t *journal, struct jbd2_inode *jinode) argument
[all...]
H A Dcheckpoint.c44 * __jbd2_log_wait_for_space: wait until there is space in the journal.
49 void __jbd2_log_wait_for_space(journal_t *journal)
50 __acquires(&journal->j_state_lock)
51 __releases(&journal->j_state_lock)
54 /* assert_spin_locked(&journal->j_state_lock); */
56 nblocks = journal->j_max_transaction_buffers;
57 while (jbd2_log_space_left(journal) < nblocks) {
58 write_unlock(&journal->j_state_lock);
59 mutex_lock_io(&journal->j_checkpoint_mutex);
65 * journal spac
88 jbd2_log_do_checkpoint(journal); variable
121 __flush_batch(journal_t *journal, int *batch_count) argument
148 jbd2_log_do_checkpoint(journal_t *journal) argument
311 jbd2_cleanup_journal_tail(journal_t *journal) argument
403 jbd2_journal_shrink_checkpoint_list(journal_t *journal, unsigned long *nr_to_scan) argument
479 __jbd2_journal_clean_checkpoint_list(journal_t *journal, bool destroy) argument
518 jbd2_journal_destroy_checkpoint(journal_t *journal) argument
558 journal_t *journal; local
679 __jbd2_journal_drop_transaction(journal_t *journal, transaction_t *transaction) argument
[all...]
H A Drevoke.c17 * transaction's revoked blocks to the journal
34 * need either to cancel the journal entry or to write the revoke
62 * running transaction (is pointed to by journal->j_revoke), the other one
99 journal replay, this involves recording the transaction ID of the
131 static inline int hash(journal_t *journal, unsigned long long block) argument
133 return hash_64(block, journal->j_revoke->hash_shift);
136 static int insert_revoke_hash(journal_t *journal, unsigned long long blocknr, argument
151 hash_list = &journal->j_revoke->hash_table[hash(journal, blocknr)];
152 spin_lock(&journal
160 find_revoke_record(journal_t *journal, unsigned long long blocknr) argument
263 jbd2_journal_init_revoke(journal_t *journal, int hash_size) argument
290 jbd2_journal_destroy_revoke(journal_t *journal) argument
330 journal_t *journal; local
426 journal_t *journal = handle->h_transaction->t_journal; local
484 jbd2_clear_buffer_revoked_flags(journal_t *journal) argument
513 jbd2_journal_switch_revoke_table(journal_t *journal) argument
533 journal_t *journal = transaction->t_journal; local
577 journal_t *journal = transaction->t_journal; local
641 flush_descriptor(journal_t *journal, struct buffer_head *descriptor, int offset) argument
683 jbd2_journal_set_revoke(journal_t *journal, unsigned long long blocknr, tid_t sequence) argument
707 jbd2_journal_test_revoke(journal_t *journal, unsigned long long blocknr, tid_t sequence) argument
726 jbd2_journal_clear_revoke(journal_t *journal) argument
[all...]
H A Dcommit.c30 * IO end handler for temporary buffer_heads handling writes to the journal.
109 * mode we can now just skip the rest of the journal write
112 * Returns 1 if the journal needs to be aborted or 0 on success
114 static int journal_submit_commit_record(journal_t *journal, argument
126 if (is_journal_aborted(journal))
139 if (jbd2_has_feature_checksum(journal)) {
144 jbd2_commit_block_csum_set(journal, bh);
152 if (journal->j_flags & JBD2_BARRIER &&
153 !jbd2_has_feature_async_commit(journal))
165 static int journal_wait_on_commit_record(journal_t *journal, argument
181 jbd2_submit_inode_data(journal_t *journal, struct jbd2_inode *jinode) argument
192 jbd2_wait_inode_data(journal_t *journal, struct jbd2_inode *jinode) argument
211 journal_submit_data_buffers(journal_t *journal, transaction_t *commit_transaction) argument
254 journal_finish_inode_data_buffers(journal_t *journal, transaction_t *commit_transaction) argument
348 jbd2_journal_commit_transaction(journal_t *journal) argument
[all...]
H A Drecovery.c39 static int do_one_pass(journal_t *journal,
55 * When reading from the journal, we are going through the block device
67 static int do_readahead(journal_t *journal, unsigned int start) argument
77 max = start + (128 * 1024 / journal->j_blocksize);
78 if (max > journal->j_total_len)
79 max = journal->j_total_len;
87 err = jbd2_journal_bmap(journal, next, &blocknr);
95 bh = __getblk(journal->j_dev, blocknr, journal->j_blocksize);
126 * Read a block from the journal
129 jread(struct buffer_head **bhp, journal_t *journal, unsigned int offset) argument
202 count_tags(journal_t *journal, struct buffer_head *bh) argument
237 fc_do_one_pass(journal_t *journal, struct recovery_info *info, enum passtype pass) argument
286 jbd2_journal_recover(journal_t *journal) argument
357 jbd2_journal_skip_recovery(journal_t *journal) argument
387 read_tag_block(journal_t *journal, journal_block_tag_t *tag) argument
400 calc_chksums(journal_t *journal, struct buffer_head *bh, unsigned long *next_log_block, __u32 *crc32_sum) argument
466 do_one_pass(journal_t *journal, struct recovery_info *info, enum passtype pass) argument
909 scan_revoke_records(journal_t *journal, struct buffer_head *bh, tid_t sequence, struct recovery_info *info) argument
[all...]
H A Dtransaction.c68 static int jbd2_descriptor_blocks_per_trans(journal_t *journal) argument
70 int tag_space = journal->j_blocksize - sizeof(journal_header_t);
75 if (jbd2_journal_has_csum_v2or3(journal))
78 tags_per_block = (tag_space - 16) / journal_tag_bytes(journal);
83 return 1 + DIV_ROUND_UP(journal->j_max_transaction_buffers,
91 * RUNNING state and add it to the current journal (which should not
96 * The journal MUST be locked. We don't perform atomic mallocs on the
98 * processes trying to touch the journal while it is in transition.
102 static void jbd2_get_transaction(journal_t *journal, argument
105 transaction->t_journal = journal;
177 jbd2_might_wait_for_commit(journal); variable
210 sub_reserved_credits(journal_t *journal, int blocks) argument
241 wait_transaction_locked(journal); variable
267 jbd2_might_wait_for_commit(journal); variable
275 wait_transaction_locked(journal); variable
294 jbd2_might_wait_for_commit(journal); variable
298 __jbd2_log_wait_for_space(journal); variable
314 jbd2_might_wait_for_commit(journal); variable
331 start_this_handle(journal_t *journal, handle_t *handle, gfp_t gfp_mask) argument
485 jbd2__journal_start(journal_t *journal, int nblocks, int rsv_blocks, int revoke_records, gfp_t gfp_mask, unsigned int type, unsigned int line_no) argument
557 jbd2_journal_start(journal_t *journal, int nblocks) argument
565 journal_t *journal = handle->h_journal; local
575 journal_t *journal = handle->h_journal; local
602 journal_t *journal = handle->h_journal; local
663 journal_t *journal; local
719 journal_t *journal = transaction->t_journal; local
782 journal_t *journal; local
835 jbd2_journal_wait_updates(journal_t *journal) argument
878 jbd2_journal_lock_updates(journal_t *journal) argument
915 jbd2_journal_unlock_updates(journal_t *journal) argument
971 journal_t *journal; local
1234 journal_t *journal; local
1288 journal_t *journal; local
1503 journal_t *journal; local
1675 journal_t *journal; local
1842 journal_t *journal; local
2097 jbd2_journal_unfile_buffer(journal_t *journal, struct journal_head *jh) argument
2146 jbd2_journal_try_to_free_buffers(journal_t *journal, struct folio *folio) argument
2270 journal_unmap_buffer(journal_t *journal, struct buffer_head *bh, int partial_page) argument
2447 jbd2_journal_invalidate_folio(journal_t *journal, struct folio *folio, size_t offset, size_t length) argument
2646 jbd2_journal_refile_buffer(journal_t *journal, struct journal_head *jh) argument
2666 journal_t *journal; local
2752 jbd2_journal_begin_ordered_truncate(journal_t *journal, struct jbd2_inode *jinode, loff_t new_size) argument
[all...]
H A DMakefile8 jbd2-objs := transaction.o commit.o recovery.o checkpoint.o revoke.o journal.o
/linux-master/fs/bcachefs/
H A Djournal_reclaim.h7 static inline void journal_reclaim_kick(struct journal *j)
16 unsigned bch2_journal_dev_buckets_available(struct journal *,
19 void bch2_journal_set_watermark(struct journal *);
20 void bch2_journal_space_available(struct journal *);
28 journal_seq_pin(struct journal *j, u64 seq)
35 void bch2_journal_reclaim_fast(struct journal *);
36 bool __bch2_journal_pin_put(struct journal *, u64);
37 void bch2_journal_pin_put(struct journal *, u64);
38 void bch2_journal_pin_drop(struct journal *, struct journal_entry_pin *);
40 void bch2_journal_pin_set(struct journal *, u6
[all...]
H A Djournal.h8 * The primary purpose of the journal is to log updates (insertions) to the
11 * Without the journal, the b-tree is always internally consistent on
12 * disk - and in fact, in the earliest incarnations bcache didn't have a journal
16 * Updates to interior nodes still happen synchronously and without the journal
20 * This means the journal is relatively separate from the b-tree; it consists of
21 * just a list of keys and journal replay consists of just redoing those
22 * insertions in same order that they appear in the journal.
27 * disk), the journal entry will be written out immediately (or as soon as
28 * possible, if the write for the previous journal entry was still in flight).
32 * down to the journalling code. That closure will wait on the journal writ
[all...]
H A Djournal_sb.c23 struct bch_sb_field_journal *journal = field_to_type(f, journal); local
30 nr = bch2_nr_journal_buckets(journal);
39 b[i] = le64_to_cpu(journal->buckets[i]);
44 prt_printf(err, "journal bucket at sector 0");
49 prt_printf(err, "journal bucket %llu before first bucket %u",
55 prt_printf(err, "journal bucket %llu past end of device (nbuckets %llu)",
62 prt_printf(err, "duplicate journal buckets %llu", b[i]);
75 struct bch_sb_field_journal *journal = field_to_type(f, journal); local
106 struct bch_sb_field_journal_v2 *journal = field_to_type(f, journal_v2); local
162 struct bch_sb_field_journal_v2 *journal = field_to_type(f, journal_v2); local
[all...]
H A Djournal_reclaim.c10 #include "journal.h"
37 unsigned bch2_journal_dev_buckets_available(struct journal *j,
54 void bch2_journal_set_watermark(struct journal *j)
56 struct bch_fs *c = container_of(j, struct bch_fs, journal);
78 journal_dev_space_available(struct journal *j, struct bch_dev *ca,
81 struct journal_device *ja = &ca->journal;
95 * We that we don't allocate the space for a journal entry
134 static struct journal_space __journal_space_available(struct journal *j, unsigned nr_devs_want,
137 struct bch_fs *c = container_of(j, struct bch_fs, journal);
145 if (!ca->journal
[all...]
H A Djournal.c16 #include "journal.h"
30 static inline bool journal_seq_unwritten(struct journal *j, u64 seq)
40 static inline unsigned nr_unwritten_journal_entries(struct journal *j)
45 static bool journal_entry_is_open(struct journal *j)
50 static void bch2_journal_buf_to_text(struct printbuf *out, struct journal *j, u64 seq)
98 static void bch2_journal_bufs_to_text(struct printbuf *out, struct journal *j)
111 journal_seq_to_buf(struct journal *j, u64 seq)
136 * Detect stuck journal conditions and trigger shutdown. Technically the journal
137 * can end up stuck for a variety of reasons, such as a blocked I/O, journal
[all...]
/linux-master/fs/reiserfs/
H A Djournal.c75 /* journal list state bits */
93 static void release_journal_dev(struct reiserfs_journal *journal);
101 JBEGIN_REG = 0, /* regular journal begin */
114 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
115 memset(journal->j_hash_table, 0,
156 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
158 struct list_head *entry = journal->j_bitmap_nodes.next;
160 journal->j_used_bitmap_nodes++;
163 if (entry != &journal->j_bitmap_nodes) {
167 journal
180 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
194 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
257 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
313 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
369 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
396 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
462 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
578 struct reiserfs_journal *journal = SB_JOURNAL(s); local
883 struct reiserfs_journal *journal = SB_JOURNAL(s); local
976 struct reiserfs_journal *journal = SB_JOURNAL(s); local
1199 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
1239 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
1301 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
1328 struct reiserfs_journal *journal = SB_JOURNAL(s); local
1355 struct reiserfs_journal *journal = SB_JOURNAL(s); local
1726 struct reiserfs_journal *journal = SB_JOURNAL(s); local
1794 struct reiserfs_journal *journal = SB_JOURNAL(s); local
1881 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
1907 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
2114 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
2372 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
2589 release_journal_dev(struct reiserfs_journal *journal) argument
2597 journal_init_dev(struct super_block *super, struct reiserfs_journal *journal, const char *jdev_name) argument
2667 check_advise_trans_params(struct super_block *sb, struct reiserfs_journal *journal) argument
2719 struct reiserfs_journal *journal; local
2921 struct reiserfs_journal *journal = SB_JOURNAL(th->t_super); local
2943 struct reiserfs_journal *journal = SB_JOURNAL(th->t_super); local
2953 struct reiserfs_journal *journal = SB_JOURNAL(s); local
2961 struct reiserfs_journal *journal = SB_JOURNAL(s); local
2969 struct reiserfs_journal *journal = SB_JOURNAL(s); local
2990 struct reiserfs_journal *journal = SB_JOURNAL(s); local
2997 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
3033 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
3283 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
3432 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
3526 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
3542 struct reiserfs_journal *journal = local
3566 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
3624 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
3743 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
3833 struct reiserfs_journal *journal = SB_JOURNAL(inode->i_sb); local
3847 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
3927 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
3987 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
4392 struct reiserfs_journal *journal = SB_JOURNAL(sb); local
[all...]
/linux-master/drivers/md/bcache/
H A Djournal.c18 * This code is all driven from run_cache_set(); we first read the journal
19 * entries, do some other stuff, then we mark all the keys in the journal
22 * journal.
24 * We only journal keys that go in leaf nodes, which simplifies things quite a
38 struct journal_device *ja = &ca->journal;
42 struct jset *j, *data = ca->set->journal.w[0].data;
68 * journal entries that overlap bucket boundaries; this means
69 * the start of a bucket will always have a valid journal entry
70 * if it has any journal entries at all.
104 * journal se
[all...]
H A Djournal.h8 * The journal is treated as a circular buffer of buckets - a journal entry
10 * journal at runtime, and will be needed for bcache on raw flash support.
13 * inserted; thus journal replay just has to reinsert the keys.
15 * We also keep some things in the journal header that are logically part of the
18 * journal) can't be moved or wear leveled, so it contains just enough
19 * information to find the main journal, and the superblock only has to be
20 * rewritten when we want to move/wear level the main journal.
22 * Currently, we don't journal BTREE_REPLACE operations - this will hopefully be
31 * Each journal entr
104 struct journal { struct
[all...]
H A DMakefile6 journal.o movinggc.o request.o stats.o super.o sysfs.o trace.o\
/linux-master/fs/ocfs2/
H A Djournal.c3 * journal.c
31 #include "journal.h"
62 static void ocfs2_queue_recovery_completion(struct ocfs2_journal *journal,
155 ocfs2_queue_recovery_completion(osb->journal, i, NULL,
294 struct ocfs2_journal *journal = NULL; local
296 journal = osb->journal;
298 /* Flush all pending commits and checkpoint the journal. */
299 down_write(&journal->j_trans_barrier);
301 flushed = atomic_read(&journal
333 journal_t *journal = osb->journal->j_journal; local
375 struct ocfs2_journal *journal = osb->journal; local
779 journal_t *journal = handle->h_transaction->t_journal; local
796 journal_t *journal = osb->journal->j_journal; local
818 struct ocfs2_journal *journal; local
860 struct ocfs2_journal *journal = osb->journal; local
964 struct ocfs2_journal *journal = osb->journal; local
999 struct ocfs2_journal *journal = NULL; local
1076 ocfs2_clear_journal_error(struct super_block *sb, journal_t *journal, int slot) argument
1094 ocfs2_journal_load(struct ocfs2_journal *journal, int local, int replayed) argument
1146 ocfs2_journal_wipe(struct ocfs2_journal *journal, int full) argument
1262 struct ocfs2_journal *journal = local
1333 ocfs2_queue_recovery_completion(struct ocfs2_journal *journal, int slot_num, struct ocfs2_dinode *la_dinode, struct ocfs2_dinode *tl_dinode, struct ocfs2_quota_recovery *qrec, enum ocfs2_orphan_reco_type orphan_reco_type) argument
1374 struct ocfs2_journal *journal = osb->journal; local
1617 journal_t *journal = NULL; local
2331 struct ocfs2_journal *journal = osb->journal; local
[all...]
H A Djournal.h3 * journal.h
39 journal_t *j_journal; /* The kernels journal type */
41 * this journal */
78 static inline void ocfs2_set_ci_lock_trans(struct ocfs2_journal *journal, argument
82 ci->ci_last_trans = journal->j_trans_id;
94 struct ocfs2_journal *journal = local
95 OCFS2_SB(ocfs2_metadata_cache_get_super(ci))->journal;
98 ret = time_after(journal->j_trans_id, ci->ci_last_trans);
110 struct ocfs2_journal *journal = local
111 OCFS2_SB(ocfs2_metadata_cache_get_super(ci))->journal;
[all...]
/linux-master/include/linux/
H A Djbd2.h24 #include <linux/journal-head.h>
156 * field is used to store crc32c(uuid+commit_block). Each journal metadata
180 * The block tag: used to describe a single buffer in the journal.
183 * journal_tag_bytes(journal) instead to compute this.
216 /* Definitions for the journal tag flags word: */
224 * The journal superblock. All fields are in big-endian byte order.
232 /* Static information describing the journal */
233 __be32 s_blocksize; /* journal device blocksize */
234 __be32 s_maxlen; /* total blocks in journal file */
252 __u8 s_uuid[16]; /* 128-bit uuid for journal */
1665 jbd2_journal_get_max_txn_bufs(journal_t *journal) argument
1680 is_journal_aborted(journal_t *journal) argument
1697 jbd2_init_fs_dev_write_error(journal_t *journal) argument
1708 jbd2_check_fs_dev_write_error(journal_t *journal) argument
1741 jbd2_journal_has_csum_v2or3(journal_t *journal) argument
1759 jbd2_log_space_left(journal_t *journal) argument
1786 jbd2_chksum(journal_t *journal, u32 crc, const void *address, unsigned int length) argument
1808 jbd2_get_latest_transaction(journal_t *journal) argument
1822 journal_t *journal; local
[all...]
/linux-master/include/trace/events/
H A Djbd2.h16 TP_PROTO(journal_t *journal, int result),
18 TP_ARGS(journal, result),
26 __entry->dev = journal->j_fs_dev->bd_dev;
36 TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
38 TP_ARGS(journal, commit_transaction),
47 __entry->dev = journal->j_fs_dev->bd_dev;
59 TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
61 TP_ARGS(journal, commit_transaction)
66 TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
68 TP_ARGS(journal, commit_transactio
[all...]
/linux-master/fs/ext4/
H A Dfsync.c101 journal_t *journal = EXT4_SB(inode->i_sb)->s_journal; local
111 if (journal->j_flags & JBD2_BARRIER &&
112 !jbd2_trans_will_send_data_barrier(journal, commit_tid))
115 return ext4_fc_commit(journal, commit_tid);
164 * Metadata is in the journal, we wait for proper transaction to
H A Dext4_jbd2.c23 return EXT4_INODE_JOURNAL_DATA_MODE; /* journal data */
66 journal_t *journal; local
77 journal = EXT4_SB(sb)->s_journal;
79 * Special case here: if the journal has aborted behind our
83 if (journal && is_journal_aborted(journal)) {
84 ext4_abort(sb, -journal->j_errno, "Detected aborted journal");
95 journal_t *journal; local
109 journal
[all...]

Completed in 320 milliseconds

12345