jbd2: move lockdep instrumentation for jbd2 handles
authorJan Kara <jack@suse.cz>
Thu, 30 Jun 2016 15:30:21 +0000 (11:30 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Thu, 30 Jun 2016 15:30:21 +0000 (11:30 -0400)
The transaction the handle references is free to commit once we've
decremented t_updates counter. Move the lockdep instrumentation to that
place. Currently it was a bit later which did not really matter but
subsequent improvements to lockdep instrumentation would cause false
positives with it.

Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/jbd2/transaction.c

index 1749519b362fa6ca7385de310d5c67096746278d..41249538c0472f6ab4cd3afa3ec4c17c9836f2fa 100644 (file)
@@ -1750,11 +1750,11 @@ int jbd2_journal_stop(handle_t *handle)
                        wake_up(&journal->j_wait_transaction_locked);
        }
 
+       lock_map_release(&handle->h_lockdep_map);
+
        if (wait_for_commit)
                err = jbd2_log_wait_commit(journal, tid);
 
-       lock_map_release(&handle->h_lockdep_map);
-
        if (handle->h_rsv_handle)
                jbd2_journal_free_reserved(handle->h_rsv_handle);
 free_and_exit: