linux/fs/jbd2
Theodore Ts'o 42cf3452d5 jbd2: calculate statistics without holding j_state_lock and j_list_lock
The two hottest locks, and thus the biggest scalability bottlenecks,
in the jbd2 layer, are the j_list_lock and j_state_lock.  This has
inspired some people to do some truly unnatural things[1].

[1] https://www.usenix.org/system/files/conference/fast14/fast14-paper_kang.pdf

We don't need to be holding both j_state_lock and j_list_lock while
calculating the journal statistics, so move those calculations to the
very end of jbd2_journal_commit_transaction.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2014-03-08 19:51:16 -05:00
..
checkpoint.c jbd2: drop checkpoint mutex when waiting in __jbd2_log_wait_for_space() 2013-06-12 22:47:35 -04:00
commit.c jbd2: calculate statistics without holding j_state_lock and j_list_lock 2014-03-08 19:51:16 -05:00
journal.c jbd2: don't hold j_state_lock while calling wake_up() 2014-03-08 19:11:36 -05:00
Kconfig jbd2: remove debug dependency on debug_fs and update Kconfig help text 2013-06-12 23:07:51 -04:00
Makefile [PATCH] jbd2: rename jbd2 symbols to avoid duplication of jbd symbols 2006-10-11 11:14:15 -07:00
recovery.c jbd2: rename obsoleted msg JBD->JBD2 2013-12-08 21:14:59 -05:00
revoke.c jbd2: remove journal_head from descriptor buffers 2013-06-04 12:06:01 -04:00
transaction.c jbd2: fix use after free in jbd2_journal_start_reserved() 2014-02-17 20:33:01 -05:00