diff options
author | Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> | 2008-11-06 17:50:21 -0500 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2008-11-06 17:50:21 -0500 |
commit | fb68407b0d9efba962c03f55009c797e22f024bc (patch) | |
tree | b3f33f513969d6f77c5b6a6f71b662057d3440a5 /include/linux | |
parent | c3a326a657562dab81acf05aee106dc1fe345eb4 (diff) |
jbd2: Call journal commit callback without holding j_list_lock
Avoid freeing the transaction in __jbd2_journal_drop_transaction() so
the journal commit callback can run without holding j_list_lock, to
avoid lock contention on this spinlock.
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/jbd2.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/jbd2.h b/include/linux/jbd2.h index 004c9a8d63ed..9d82084a1605 100644 --- a/include/linux/jbd2.h +++ b/include/linux/jbd2.h | |||
@@ -1179,8 +1179,8 @@ int jbd2_log_wait_commit(journal_t *journal, tid_t tid); | |||
1179 | int jbd2_log_do_checkpoint(journal_t *journal); | 1179 | int jbd2_log_do_checkpoint(journal_t *journal); |
1180 | 1180 | ||
1181 | void __jbd2_log_wait_for_space(journal_t *journal); | 1181 | void __jbd2_log_wait_for_space(journal_t *journal); |
1182 | extern void __jbd2_journal_drop_transaction(journal_t *, transaction_t *); | 1182 | extern void __jbd2_journal_drop_transaction(journal_t *, transaction_t *); |
1183 | extern int jbd2_cleanup_journal_tail(journal_t *); | 1183 | extern int jbd2_cleanup_journal_tail(journal_t *); |
1184 | 1184 | ||
1185 | /* Debugging code only: */ | 1185 | /* Debugging code only: */ |
1186 | 1186 | ||