/fs/jbd2/ |
D | journal.c | 147 journal_t *journal = from_timer(journal, t, j_commit_timer); in commit_timeout() local 149 wake_up_process(journal->j_task); in commit_timeout() 170 journal_t *journal = arg; in kjournald2() local 177 timer_setup(&journal->j_commit_timer, commit_timeout, 0); in kjournald2() 182 journal->j_task = current; in kjournald2() 183 wake_up(&journal->j_wait_done_commit); in kjournald2() 196 write_lock(&journal->j_state_lock); in kjournald2() 199 if (journal->j_flags & JBD2_UNMOUNT) in kjournald2() 203 journal->j_commit_sequence, journal->j_commit_request); in kjournald2() 205 if (journal->j_commit_sequence != journal->j_commit_request) { in kjournald2() [all …]
|
D | checkpoint.c | 85 void __jbd2_log_wait_for_space(journal_t *journal) in __jbd2_log_wait_for_space() argument 86 __acquires(&journal->j_state_lock) in __jbd2_log_wait_for_space() 87 __releases(&journal->j_state_lock) in __jbd2_log_wait_for_space() 92 nblocks = jbd2_space_needed(journal); in __jbd2_log_wait_for_space() 93 while (jbd2_log_space_left(journal) < nblocks) { in __jbd2_log_wait_for_space() 94 write_unlock(&journal->j_state_lock); in __jbd2_log_wait_for_space() 95 mutex_lock_io(&journal->j_checkpoint_mutex); in __jbd2_log_wait_for_space() 108 write_lock(&journal->j_state_lock); in __jbd2_log_wait_for_space() 109 if (journal->j_flags & JBD2_ABORT) { in __jbd2_log_wait_for_space() 110 mutex_unlock(&journal->j_checkpoint_mutex); in __jbd2_log_wait_for_space() [all …]
|
D | commit.c | 116 static int journal_submit_commit_record(journal_t *journal, in journal_submit_commit_record() argument 128 if (is_journal_aborted(journal)) in journal_submit_commit_record() 141 if (jbd2_has_feature_checksum(journal)) { in journal_submit_commit_record() 146 jbd2_commit_block_csum_set(journal, bh); in journal_submit_commit_record() 154 if (journal->j_flags & JBD2_BARRIER && in journal_submit_commit_record() 155 !jbd2_has_feature_async_commit(journal)) in journal_submit_commit_record() 169 static int journal_wait_on_commit_record(journal_t *journal, in journal_wait_on_commit_record() argument 213 static int journal_submit_data_buffers(journal_t *journal, in journal_submit_data_buffers() argument 220 spin_lock(&journal->j_list_lock); in journal_submit_data_buffers() 229 spin_unlock(&journal->j_list_lock); in journal_submit_data_buffers() [all …]
|
D | transaction.c | 80 static void jbd2_get_transaction(journal_t *journal, in jbd2_get_transaction() argument 83 transaction->t_journal = journal; in jbd2_get_transaction() 86 transaction->t_tid = journal->j_transaction_sequence++; in jbd2_get_transaction() 87 transaction->t_expires = jiffies + journal->j_commit_interval; in jbd2_get_transaction() 91 atomic_read(&journal->j_reserved_credits)); in jbd2_get_transaction() 97 journal->j_commit_timer.expires = round_jiffies_up(transaction->t_expires); in jbd2_get_transaction() 98 add_timer(&journal->j_commit_timer); in jbd2_get_transaction() 100 J_ASSERT(journal->j_running_transaction == NULL); in jbd2_get_transaction() 101 journal->j_running_transaction = transaction; in jbd2_get_transaction() 145 static void wait_transaction_locked(journal_t *journal) in wait_transaction_locked() argument [all …]
|
D | revoke.c | 131 static inline int hash(journal_t *journal, unsigned long long block) in hash() argument 133 return hash_64(block, journal->j_revoke->hash_shift); in hash() 136 static int insert_revoke_hash(journal_t *journal, unsigned long long blocknr, in insert_revoke_hash() argument 151 hash_list = &journal->j_revoke->hash_table[hash(journal, blocknr)]; in insert_revoke_hash() 152 spin_lock(&journal->j_revoke_lock); in insert_revoke_hash() 154 spin_unlock(&journal->j_revoke_lock); in insert_revoke_hash() 160 static struct jbd2_revoke_record_s *find_revoke_record(journal_t *journal, in find_revoke_record() argument 166 hash_list = &journal->j_revoke->hash_table[hash(journal, blocknr)]; in find_revoke_record() 168 spin_lock(&journal->j_revoke_lock); in find_revoke_record() 172 spin_unlock(&journal->j_revoke_lock); in find_revoke_record() [all …]
|
D | recovery.c | 39 static int do_one_pass(journal_t *journal, 67 static int do_readahead(journal_t *journal, unsigned int start) in do_readahead() argument 77 max = start + (128 * 1024 / journal->j_blocksize); in do_readahead() 78 if (max > journal->j_maxlen) in do_readahead() 79 max = journal->j_maxlen; in do_readahead() 87 err = jbd2_journal_bmap(journal, next, &blocknr); in do_readahead() 95 bh = __getblk(journal->j_dev, blocknr, journal->j_blocksize); in do_readahead() 129 static int jread(struct buffer_head **bhp, journal_t *journal, in jread() argument 138 if (offset >= journal->j_maxlen) { in jread() 143 err = jbd2_journal_bmap(journal, offset, &blocknr); in jread() [all …]
|
D | Makefile | 8 jbd2-objs := transaction.o commit.o recovery.o checkpoint.o revoke.o journal.o
|
D | Kconfig | 11 journal support to other file systems or block devices such
|
/fs/reiserfs/ |
D | journal.c | 96 struct reiserfs_journal *journal); 117 struct reiserfs_journal *journal = SB_JOURNAL(sb); in init_journal_hash() local 118 memset(journal->j_hash_table, 0, in init_journal_hash() 159 struct reiserfs_journal *journal = SB_JOURNAL(sb); in get_bitmap_node() local 161 struct list_head *entry = journal->j_bitmap_nodes.next; in get_bitmap_node() 163 journal->j_used_bitmap_nodes++; in get_bitmap_node() 166 if (entry != &journal->j_bitmap_nodes) { in get_bitmap_node() 170 journal->j_free_bitmap_nodes--; in get_bitmap_node() 183 struct reiserfs_journal *journal = SB_JOURNAL(sb); in free_bitmap_node() local 184 journal->j_used_bitmap_nodes--; in free_bitmap_node() [all …]
|
D | super.c | 724 struct reiserfs_journal *journal = SB_JOURNAL(s); in reiserfs_show_options() local 764 if (journal->j_max_commit_age != journal->j_default_max_commit_age) in reiserfs_show_options() 765 seq_printf(seq, ",commit=%d", journal->j_max_commit_age); in reiserfs_show_options() 1439 struct reiserfs_journal *journal = SB_JOURNAL(s); in reiserfs_remount() local 1500 journal->j_max_commit_age = commit_max_age; in reiserfs_remount() 1501 journal->j_max_trans_age = commit_max_age; in reiserfs_remount() 1504 journal->j_max_commit_age = journal->j_default_max_commit_age; in reiserfs_remount() 1505 journal->j_max_trans_age = JOURNAL_MAX_TRANS_AGE; in reiserfs_remount() 1550 if (reiserfs_is_journal_aborted(journal)) { in reiserfs_remount() 1551 err = journal->j_errno; in reiserfs_remount()
|
D | Makefile | 10 hashes.o tail_conversion.o journal.o resize.o \
|
/fs/ocfs2/ |
D | journal.c | 63 static void ocfs2_queue_recovery_completion(struct ocfs2_journal *journal, 156 ocfs2_queue_recovery_completion(osb->journal, i, NULL, in ocfs2_queue_replay_slots() 298 struct ocfs2_journal *journal = NULL; in ocfs2_commit_cache() local 300 journal = osb->journal; in ocfs2_commit_cache() 303 down_write(&journal->j_trans_barrier); in ocfs2_commit_cache() 305 flushed = atomic_read(&journal->j_num_trans); in ocfs2_commit_cache() 308 up_write(&journal->j_trans_barrier); in ocfs2_commit_cache() 312 jbd2_journal_lock_updates(journal->j_journal); in ocfs2_commit_cache() 313 status = jbd2_journal_flush(journal->j_journal); in ocfs2_commit_cache() 314 jbd2_journal_unlock_updates(journal->j_journal); in ocfs2_commit_cache() [all …]
|
D | journal.h | 80 static inline void ocfs2_set_ci_lock_trans(struct ocfs2_journal *journal, in ocfs2_set_ci_lock_trans() argument 84 ci->ci_last_trans = journal->j_trans_id; in ocfs2_set_ci_lock_trans() 96 struct ocfs2_journal *journal = in ocfs2_ci_fully_checkpointed() local 97 OCFS2_SB(ocfs2_metadata_cache_get_super(ci))->journal; in ocfs2_ci_fully_checkpointed() 100 ret = time_after(journal->j_trans_id, ci->ci_last_trans); in ocfs2_ci_fully_checkpointed() 112 struct ocfs2_journal *journal = in ocfs2_ci_is_new() local 113 OCFS2_SB(ocfs2_metadata_cache_get_super(ci))->journal; in ocfs2_ci_is_new() 116 ret = !(time_after(journal->j_trans_id, ci->ci_created_trans)); in ocfs2_ci_is_new() 139 ci->ci_created_trans = osb->journal->j_trans_id; in ocfs2_ci_set_new() 173 int ocfs2_journal_init(struct ocfs2_journal *journal, [all …]
|
D | super.c | 288 "Journal", osb->journal->j_state, in ocfs2_osb_dump() 289 osb->journal->j_trans_id, in ocfs2_osb_dump() 290 atomic_read(&osb->journal->j_num_trans)); in ocfs2_osb_dump() 412 if (jbd2_journal_start_commit(osb->journal->j_journal, in ocfs2_sync_fs() 415 jbd2_log_wait_commit(osb->journal->j_journal, in ocfs2_sync_fs() 1993 jbd2_journal_check_used_features(osb->journal->j_journal, 0, 0, in ocfs2_journal_addressable() 2014 struct ocfs2_journal *journal; in ocfs2_initialize_super() local 2204 journal = kzalloc(sizeof(struct ocfs2_journal), GFP_KERNEL); in ocfs2_initialize_super() 2205 if (!journal) { in ocfs2_initialize_super() 2210 osb->journal = journal; in ocfs2_initialize_super() [all …]
|
D | inode.c | 130 journal_t *journal = OCFS2_SB(sb)->journal->j_journal; in ocfs2_iget() local 177 if (journal) { in ocfs2_iget() 182 read_lock(&journal->j_state_lock); in ocfs2_iget() 183 if (journal->j_running_transaction) in ocfs2_iget() 184 transaction = journal->j_running_transaction; in ocfs2_iget() 186 transaction = journal->j_committing_transaction; in ocfs2_iget() 190 tid = journal->j_commit_sequence; in ocfs2_iget() 191 read_unlock(&journal->j_state_lock); in ocfs2_iget() 1210 jbd2_journal_release_jbd_inode(osb->journal->j_journal, in ocfs2_clear_inode()
|
D | Makefile | 25 journal.o \
|
/fs/ext4/ |
D | ext4_jbd2.c | 44 journal_t *journal; in ext4_journal_check_start() local 54 journal = EXT4_SB(sb)->s_journal; in ext4_journal_check_start() 60 if (journal && is_journal_aborted(journal)) { in ext4_journal_check_start() 70 journal_t *journal; in __ext4_journal_start_sb() local 78 journal = EXT4_SB(sb)->s_journal; in __ext4_journal_start_sb() 79 if (!journal) in __ext4_journal_start_sb() 81 return jbd2__journal_start(journal, blocks, rsv_blocks, GFP_NOFS, in __ext4_journal_start_sb()
|
D | fsync.c | 97 journal_t *journal = EXT4_SB(inode->i_sb)->s_journal; in ext4_sync_file() local 117 if (!journal) { in ext4_sync_file() 149 if (journal->j_flags & JBD2_BARRIER && in ext4_sync_file() 150 !jbd2_trans_will_send_data_barrier(journal, commit_tid)) in ext4_sync_file() 152 ret = jbd2_complete_transaction(journal, commit_tid); in ext4_sync_file()
|
D | super.c | 412 static void ext4_journal_commit_callback(journal_t *journal, transaction_t *txn) in ext4_journal_commit_callback() argument 414 struct super_block *sb = journal->j_private; in ext4_journal_commit_callback() 416 int error = is_journal_aborted(journal); in ext4_journal_commit_callback() 458 journal_t *journal = EXT4_SB(sb)->s_journal; in ext4_handle_error() local 467 if (journal) in ext4_handle_error() 468 jbd2_journal_abort(journal, -EIO); in ext4_handle_error() 1259 journal_t *journal = EXT4_SB(sb)->s_journal; in bdev_try_to_free_page() local 1264 if (journal) in bdev_try_to_free_page() 1265 return jbd2_journal_try_to_free_buffers(journal, page, in bdev_try_to_free_page() 4851 static void ext4_init_journal_params(struct super_block *sb, journal_t *journal) in ext4_init_journal_params() argument [all …]
|
D | inode.c | 236 journal_t *journal = EXT4_SB(inode->i_sb)->s_journal; in ext4_evict_inode() local 239 jbd2_complete_transaction(journal, commit_tid); in ext4_evict_inode() 3345 journal_t *journal; in ext4_bmap() local 3385 journal = EXT4_JOURNAL(inode); in ext4_bmap() 3386 jbd2_journal_lock_updates(journal); in ext4_bmap() 3387 err = jbd2_journal_flush(journal); in ext4_bmap() 3388 jbd2_journal_unlock_updates(journal); in ext4_bmap() 3442 journal_t *journal = EXT4_JOURNAL(page->mapping->host); in __ext4_journalled_invalidatepage() local 3452 return jbd2_journal_invalidatepage(journal, page, offset, length); in __ext4_journalled_invalidatepage() 3465 journal_t *journal = EXT4_JOURNAL(page->mapping->host); in ext4_releasepage() local [all …]
|
D | ext4_jbd2.h | 356 static inline int ext4_journal_force_commit(journal_t *journal) in ext4_journal_force_commit() argument 358 if (journal) in ext4_journal_force_commit() 359 return jbd2_journal_force_commit(journal); in ext4_journal_force_commit()
|
D | fsmap.c | 259 journal_t *journal = EXT4_SB(sb)->s_journal; in ext4_getfsmap_logdev() local 282 irec.fmr_physical = journal->j_blk_offset; in ext4_getfsmap_logdev() 283 irec.fmr_length = journal->j_maxlen; in ext4_getfsmap_logdev()
|
/fs/f2fs/ |
D | segment.c | 2359 memcpy(&dst->journal, curseg->journal, SUM_JOURNAL_SIZE); in write_current_sum_page() 3501 memcpy(seg_i->journal, kaddr, SUM_JOURNAL_SIZE); in read_compacted_summaries() 3505 memcpy(seg_i->journal, kaddr + SUM_JOURNAL_SIZE, SUM_JOURNAL_SIZE); in read_compacted_summaries() 3605 memcpy(curseg->journal, &sum->journal, SUM_JOURNAL_SIZE); in read_normal_summaries() 3622 struct f2fs_journal *sit_j = CURSEG_I(sbi, CURSEG_COLD_DATA)->journal; in restore_curseg_summaries() 3623 struct f2fs_journal *nat_j = CURSEG_I(sbi, CURSEG_HOT_DATA)->journal; in restore_curseg_summaries() 3677 memcpy(kaddr, seg_i->journal, SUM_JOURNAL_SIZE); in write_compacted_summaries() 3682 memcpy(kaddr + written_size, seg_i->journal, SUM_JOURNAL_SIZE); in write_compacted_summaries() 3746 int f2fs_lookup_journal_in_cursum(struct f2fs_journal *journal, int type, in f2fs_lookup_journal_in_cursum() argument 3752 for (i = 0; i < nats_in_cursum(journal); i++) { in f2fs_lookup_journal_in_cursum() [all …]
|
D | node.c | 522 struct f2fs_journal *journal = curseg->journal; in f2fs_get_node_info() local 549 i = f2fs_lookup_journal_in_cursum(journal, NAT_JOURNAL, nid, 0); in f2fs_get_node_info() 551 ne = nat_in_journal(journal, i); in f2fs_get_node_info() 2329 struct f2fs_journal *journal = curseg->journal; in scan_curseg_cache() local 2333 for (i = 0; i < nats_in_cursum(journal); i++) { in scan_curseg_cache() 2337 addr = le32_to_cpu(nat_in_journal(journal, i).block_addr); in scan_curseg_cache() 2338 nid = le32_to_cpu(nid_in_journal(journal, i)); in scan_curseg_cache() 2784 struct f2fs_journal *journal = curseg->journal; in remove_nats_in_journal() local 2788 for (i = 0; i < nats_in_cursum(journal); i++) { in remove_nats_in_journal() 2791 nid_t nid = le32_to_cpu(nid_in_journal(journal, i)); in remove_nats_in_journal() [all …]
|
/fs/ubifs/ |
D | Makefile | 4 ubifs-y += shrinker.o journal.o file.o dir.o super.o sb.o io.o
|