| /linux/fs/jbd2/ |
| H A D | checkpoint.c | 49 void __jbd2_log_wait_for_space(journal_t *journal) in __jbd2_log_wait_for_space() argument 50 __acquires(&journal->j_state_lock) in __jbd2_log_wait_for_space() 51 __releases(&journal->j_state_lock) in __jbd2_log_wait_for_space() 56 nblocks = journal->j_max_transaction_buffers; in __jbd2_log_wait_for_space() 57 while (jbd2_log_space_left(journal) < nblocks) { in __jbd2_log_wait_for_space() 58 write_unlock(&journal->j_state_lock); in __jbd2_log_wait_for_space() 59 mutex_lock_io(&journal->j_checkpoint_mutex); in __jbd2_log_wait_for_space() 72 write_lock(&journal->j_state_lock); in __jbd2_log_wait_for_space() 73 if (journal->j_flags & JBD2_ABORT) { in __jbd2_log_wait_for_space() 74 mutex_unlock(&journal->j_checkpoint_mutex); in __jbd2_log_wait_for_space() [all …]
|
| H A D | Makefile | 8 jbd2-objs := transaction.o commit.o recovery.o checkpoint.o revoke.o journal.o
|
| H A D | Kconfig | 9 journal support to other file systems or block devices such
|
| /linux/drivers/md/dm-vdo/ |
| H A D | recovery-journal.h | 122 struct recovery_journal *journal; member 229 vdo_get_recovery_journal_block_number(const struct recovery_journal *journal, in vdo_get_recovery_journal_block_number() argument 236 return vdo_compute_recovery_journal_block_number(journal->size, sequence); in vdo_get_recovery_journal_block_number() 247 vdo_compute_recovery_journal_check_byte(const struct recovery_journal *journal, in vdo_compute_recovery_journal_check_byte() argument 251 return (((sequence / journal->size) & 0x7F) | 0x80); in vdo_compute_recovery_journal_check_byte() 261 void vdo_free_recovery_journal(struct recovery_journal *journal); 263 void vdo_initialize_recovery_journal_post_repair(struct recovery_journal *journal, 270 vdo_get_journal_block_map_data_blocks_used(struct recovery_journal *journal); 272 thread_id_t __must_check vdo_get_recovery_journal_thread_id(struct recovery_journal *journal); 274 void vdo_open_recovery_journal(struct recovery_journal *journal, [all …]
|
| H A D | Makefile | 32 recovery-journal.o \
|
| H A D | statistics.h | 230 struct recovery_journal_statistics journal; member
|
| /linux/include/trace/events/ |
| H A D | jbd2.h | 16 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_transaction) [all …]
|
| /linux/Documentation/filesystems/ext4/ |
| H A D | journal.rst | 6 Introduced in ext3, the ext4 filesystem employs a journal to protect the 8 to 10,240,000 file system blocks (see man mke2fs(8) for more details on journal 12 cache, a record of the data being committed is also written to the journal. At 13 some later point in time, the journal code writes the transactions to their 16 crash during the second slow write, the journal can be replayed all the 18 gets written through the journal to the disk. The effect of this is to 23 through the journal. This means that file data blocks are /not/ 26 option to control journal behavior. If ``data=journal``, all data and 27 metadata are written to disk through the journal. This is slower but 29 disk before the metadata are written to disk through the journal. [all …]
|
| /linux/Documentation/admin-guide/device-mapper/ |
| H A D | dm-integrity.rst | 12 To guarantee write atomicity, the dm-integrity target uses journal, it 13 writes sector data and integrity tags into a journal, commits the journal 29 instead of a journal. If a bit in the bitmap is 1, the corresponding 32 is faster than the journal mode, because we don't have to write the data 75 D - direct writes (without journal) 82 journal and atomicity is guaranteed. In case of crash, 90 R - recovery mode - in this mode, journal is not replayed, 106 The size of journal, this argument is used only if formatting the 124 The journal watermark in percents. When the size of the journal 125 exceeds this watermark, the thread that flushes the journal will [all …]
|
| /linux/fs/ocfs2/ |
| H A D | journal.h | 78 static inline void ocfs2_set_ci_lock_trans(struct ocfs2_journal *journal, in ocfs2_set_ci_lock_trans() argument 82 ci->ci_last_trans = journal->j_trans_id; in ocfs2_set_ci_lock_trans() 94 struct ocfs2_journal *journal = in ocfs2_ci_fully_checkpointed() local 95 OCFS2_SB(ocfs2_metadata_cache_get_super(ci))->journal; in ocfs2_ci_fully_checkpointed() 98 ret = time_after(journal->j_trans_id, ci->ci_last_trans); in ocfs2_ci_fully_checkpointed() 110 struct ocfs2_journal *journal = in ocfs2_ci_is_new() local 111 OCFS2_SB(ocfs2_metadata_cache_get_super(ci))->journal; in ocfs2_ci_is_new() 114 ret = !(time_after(journal->j_trans_id, ci->ci_created_trans)); in ocfs2_ci_is_new() 137 ci->ci_created_trans = osb->journal->j_trans_id; in ocfs2_ci_set_new() 176 int ocfs2_journal_wipe(struct ocfs2_journal *journal, [all …]
|
| H A D | inode.c | 126 journal_t *journal = osb->journal->j_journal; in ocfs2_iget() local 173 if (journal) { in ocfs2_iget() 178 read_lock(&journal->j_state_lock); in ocfs2_iget() 179 if (journal->j_running_transaction) in ocfs2_iget() 180 transaction = journal->j_running_transaction; in ocfs2_iget() 182 transaction = journal->j_committing_transaction; in ocfs2_iget() 186 tid = journal->j_commit_sequence; in ocfs2_iget() 187 read_unlock(&journal->j_state_lock); in ocfs2_iget() 1286 if (!osb->journal) in ocfs2_clear_inode() 1289 jbd2_journal_release_jbd_inode(osb->journal->j_journal, in ocfs2_clear_inode()
|
| H A D | Makefile | 25 journal.o \
|
| /linux/Documentation/filesystems/ |
| H A D | journalling.rst | 12 how you decide to allocate the physical media on which the journal 15 for journal stored on a raw device (in a continuous range of blocks). A 21 journal file. The journalling layer expects the space for the journal 23 When loading the journal you must call jbd2_journal_load() to process 24 journal contents. If the client file system detects the journal contents 26 may call jbd2_journal_wipe() to clear the journal contents before 31 transactions in the journal and similarly jbd2_journal_load() will 38 You still need to actually journal your filesystem changes, this is done 40 the modification of each of the buffers with calls to the journal layer, 70 jbd2_journal_destroy() to clean up your in-core journal object. [all …]
|
| H A D | ntfs3.rst | 15 - Supports native journal replaying. 114 - Full journaling support over JBD. Currently journal replaying is supported
|
| H A D | ocfs2.rst | 70 journal. 73 committed to the journal.
|
| /linux/fs/ext4/ |
| H A D | fast_commit.c | 954 static int ext4_fc_flush_data(journal_t *journal) in ext4_fc_flush_data() argument 956 struct super_block *sb = journal->j_private; in ext4_fc_flush_data() 962 ret = jbd2_submit_inode_data(journal, READ_ONCE(ei->jinode)); in ext4_fc_flush_data() 968 ret = jbd2_wait_inode_data(journal, READ_ONCE(ei->jinode)); in ext4_fc_flush_data() 977 static int ext4_fc_commit_dentry_updates(journal_t *journal, u32 *crc) in ext4_fc_commit_dentry_updates() argument 979 struct super_block *sb = journal->j_private; in ext4_fc_commit_dentry_updates() 1026 static int ext4_fc_perform_commit(journal_t *journal) in ext4_fc_perform_commit() argument 1028 struct super_block *sb = journal->j_private; in ext4_fc_perform_commit() 1051 ret = ext4_fc_flush_data(journal); in ext4_fc_perform_commit() 1086 jbd2_journal_lock_updates(journal); in ext4_fc_perform_commit() [all …]
|
| H A D | fsync.c | 114 journal_t *journal = EXT4_SB(inode->i_sb)->s_journal; in ext4_fsync_journal() local 124 if (journal->j_flags & JBD2_BARRIER && in ext4_fsync_journal() 125 !jbd2_trans_will_send_data_barrier(journal, commit_tid)) in ext4_fsync_journal() 128 return ext4_fc_commit(journal, commit_tid); in ext4_fsync_journal()
|
| H A D | super.c | 476 journal_t *journal = sbi->s_journal; in ext4_maybe_update_superblock() local 483 !(sb->s_flags & SB_ACTIVE) || !journal || in ext4_maybe_update_superblock() 484 journal->j_flags & JBD2_UNMOUNT) in ext4_maybe_update_superblock() 509 static void ext4_journal_commit_callback(journal_t *journal, transaction_t *txn) in ext4_journal_commit_callback() argument 511 struct super_block *sb = journal->j_private; in ext4_journal_commit_callback() 700 journal_t *journal = EXT4_SB(sb)->s_journal; in ext4_handle_error() local 707 if (!continue_fs && !ext4_emergency_ro(sb) && journal) in ext4_handle_error() 708 jbd2_journal_abort(journal, -error); in ext4_handle_error() 721 if (continue_fs && journal && in ext4_handle_error() 755 journal_t *journal = sbi->s_journal; in update_super_work() local [all …]
|
| H A D | block_validity.c | 354 journal_t *journal = EXT4_SB(inode->i_sb)->s_journal; in ext4_check_blockref() local 356 if (journal && inode == journal->j_inode) in ext4_check_blockref()
|
| H A D | inode.c | 397 journal_t *journal = EXT4_SB(inode->i_sb)->s_journal; in __check_block_validity() local 399 if (journal && inode == journal->j_inode) in __check_block_validity() 3414 journal_t *journal = EXT4_JOURNAL(folio->mapping->host); in __ext4_journalled_invalidate_folio() local 3424 return jbd2_journal_invalidate_folio(journal, folio, offset, length); in __ext4_journalled_invalidate_folio() 3438 journal_t *journal = EXT4_JOURNAL(inode); in ext4_release_folio() local 3445 if (journal) in ext4_release_folio() 3446 return jbd2_journal_try_to_free_buffers(journal, folio); in ext4_release_folio() 3453 journal_t *journal = EXT4_SB(inode->i_sb)->s_journal; in ext4_inode_datasync_dirty() local 3455 if (journal) { in ext4_inode_datasync_dirty() 3456 if (jbd2_transaction_committed(journal, in ext4_inode_datasync_dirty() [all …]
|
| /linux/drivers/md/bcache/ |
| H A D | Makefile | 6 journal.o movinggc.o request.o stats.o super.o sysfs.o trace.o\
|
| H A D | bcache.h | 471 struct journal_device journal; member 702 struct journal journal; member
|
| H A D | btree.c | 287 if (w->journal) { in btree_complete_write() 288 atomic_dec_bug(w->journal); in btree_complete_write() 289 __closure_wake_up(&b->c->journal.wait); in btree_complete_write() 293 w->journal = NULL; in btree_complete_write() 496 if (w->journal && in bch_btree_leaf_dirty() 497 journal_pin_cmp(b->c, w->journal, journal_ref)) { in bch_btree_leaf_dirty() 498 atomic_dec_bug(w->journal); in bch_btree_leaf_dirty() 499 w->journal = NULL; in bch_btree_leaf_dirty() 502 if (!w->journal) { in bch_btree_leaf_dirty() 503 w->journal = journal_ref; in bch_btree_leaf_dirty() [all …]
|
| /linux/Documentation/admin-guide/ |
| H A D | jfs.rst | 26 Do not write to the journal. The primary use of this option 32 Commit metadata changes to the journal. Use this option to
|
| /linux/fs/ubifs/ |
| H A D | Makefile | 4 ubifs-y += shrinker.o journal.o file.o dir.o super.o sb.o io.o
|