ext4: do not call FC trace event in ext4_fc_commit() if FS does not support FC
authorRitesh Harjani <riteshh@linux.ibm.com>
Sat, 12 Mar 2022 05:39:49 +0000 (11:09 +0530)
committerTheodore Ts'o <tytso@mit.edu>
Sun, 13 Mar 2022 02:26:08 +0000 (21:26 -0500)
This just puts trace_ext4_fc_commit_start(sb) & ktime_get()
for measuring FC commit time, after the check of whether sb
supports JOURNAL_FAST_COMMIT or not.

Signed-off-by: Ritesh Harjani <riteshh@linux.ibm.com>
Reviewed-by: Harshad Shirwadkar <harshadshirwadkar@gmail.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/d53cf3e535924ec0a1eb41a560e96561b0727e7a.1647057583.git.riteshh@linux.ibm.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/ext4/fast_commit.c

index 5ac594e..55d33f2 100644 (file)
@@ -1165,13 +1165,13 @@ int ext4_fc_commit(journal_t *journal, tid_t commit_tid)
        int status = EXT4_FC_STATUS_OK, fc_bufs_before = 0;
        ktime_t start_time, commit_time;
 
+       if (!test_opt2(sb, JOURNAL_FAST_COMMIT))
+               return jbd2_complete_transaction(journal, commit_tid);
+
        trace_ext4_fc_commit_start(sb);
 
        start_time = ktime_get();
 
-       if (!test_opt2(sb, JOURNAL_FAST_COMMIT))
-               return jbd2_complete_transaction(journal, commit_tid);
-
 restart_fc:
        ret = jbd2_fc_begin_commit(journal, commit_tid);
        if (ret == -EALREADY) {