Re: [PATCH] mm: add config for readahead window
From: Kirill A. Shutemov
Date: Fri Mar 16 2018 - 16:56:42 EST
On Fri, Mar 16, 2018 at 11:25:08AM -0700, Wei Wang wrote:
> From: Wei Wang <wvw@xxxxxxxxxx>
>
> Change VM_MAX_READAHEAD value from the default 128KB to a configurable
> value. This will allow the readahead window to grow to a maximum size
> bigger than 128KB during boot, which could benefit to sequential read
> throughput and thus boot performance.
Increase of readahead window was proposed several times. And rejected.
IIRC, Linus was against it.
What is different this time?
> Signed-off-by: Wei Wang <wvw@xxxxxxxxxx>
> ---
> include/linux/mm.h | 2 +-
> mm/Kconfig | 8 ++++++++
> 2 files changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index ad06d42adb1a..d7dc6125833e 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -2291,7 +2291,7 @@ int __must_check write_one_page(struct page *page);
> void task_dirty_inc(struct task_struct *tsk);
>
> /* readahead.c */
> -#define VM_MAX_READAHEAD 128 /* kbytes */
> +#define VM_MAX_READAHEAD CONFIG_VM_MAX_READAHEAD_KB
> #define VM_MIN_READAHEAD 16 /* kbytes (includes current page) */
>
> int force_page_cache_readahead(struct address_space *mapping, struct file *filp,
> diff --git a/mm/Kconfig b/mm/Kconfig
> index c782e8fb7235..da9ff543bdb9 100644
> --- a/mm/Kconfig
> +++ b/mm/Kconfig
> @@ -760,3 +760,11 @@ config GUP_BENCHMARK
> performance of get_user_pages_fast().
>
> See tools/testing/selftests/vm/gup_benchmark.c
> +
> +config VM_MAX_READAHEAD_KB
> + int "Default max readahead window size in Kilobytes"
> + default 128
> + help
> + This sets the VM_MAX_READAHEAD value to allow the readahead window
> + to grow to a maximum size of configured. Increasing this value will
> + benefit sequential read throughput.
> --
> 2.16.2.804.g6dcf76e118-goog
>
--
Kirill A. Shutemov