diff options
author | Song Liu <songliubraving@fb.com> | 2017-03-08 03:49:17 +0300 |
---|---|---|
committer | Shaohua Li <shli@fb.com> | 2017-03-17 02:55:53 +0300 |
commit | effe6ee7523aa50d0517bd7da141e112b44d89fa (patch) | |
tree | 5cc84ee752171cb564173d6f4ebe45574a9e6070 /drivers/md/md.h | |
parent | aaf9f12ebfafd1ea603d61ead6dbcf456a86e0f3 (diff) | |
download | linux-effe6ee7523aa50d0517bd7da141e112b44d89fa.tar.xz |
md/r5cache: improve recovery with read ahead page pool
In r5cache recovery, the journal device is scanned page by page.
Currently, we use sync_page_io() to read journal device. This is
not efficient when we have to recovery many stripes from the journal.
To improve the speed of recovery, this patch introduces a read ahead
page pool (ra_pool) to recovery_ctx. With ra_pool, multiple consecutive
pages are read in one IO. Then the recovery code read the journal from
ra_pool.
With ra_pool, r5l_recovery_ctx has become much bigger. Therefore,
r5l_recovery_log() is refactored so r5l_recovery_ctx is not using
stack space.
Signed-off-by: Song Liu <songliubraving@fb.com>
Signed-off-by: Shaohua Li <shli@fb.com>
Diffstat (limited to 'drivers/md/md.h')
0 files changed, 0 insertions, 0 deletions