lkml.org 
[lkml]   [2022]   [Jul]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.15 039/201] mm/pagealloc: sysctl: change watermark_scale_factor max limit to 30%
    Date
    From: Suren Baghdasaryan <surenb@google.com>

    [ Upstream commit 39c65a94cd9661532be150e88f8b02f4a6844a35 ]

    For embedded systems with low total memory, having to run applications
    with relatively large memory requirements, 10% max limitation for
    watermark_scale_factor poses an issue of triggering direct reclaim every
    time such application is started. This results in slow application
    startup times and bad end-user experience.

    By increasing watermark_scale_factor max limit we allow vendors more
    flexibility to choose the right level of kswapd aggressiveness for their
    device and workload requirements.

    Link: https://lkml.kernel.org/r/20211124193604.2758863-1-surenb@google.com
    Signed-off-by: Suren Baghdasaryan <surenb@google.com>
    Acked-by: Johannes Weiner <hannes@cmpxchg.org>
    Cc: Michal Hocko <mhocko@suse.com>
    Cc: Lukas Middendorf <kernel@tuxforce.de>
    Cc: Antti Palosaari <crope@iki.fi>
    Cc: Luis Chamberlain <mcgrof@kernel.org>
    Cc: Kees Cook <keescook@chromium.org>
    Cc: Iurii Zaikin <yzaikin@google.com>
    Cc: Dave Hansen <dave.hansen@linux.intel.com>
    Cc: Vlastimil Babka <vbabka@suse.cz>
    Cc: Mel Gorman <mgorman@techsingularity.net>
    Cc: Jonathan Corbet <corbet@lwn.net>
    Cc: Zhang Yi <yi.zhang@huawei.com>
    Cc: Fengfei Xi <xi.fengfei@h3c.com>
    Cc: Mike Rapoport <rppt@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    Documentation/admin-guide/sysctl/vm.rst | 2 +-
    kernel/sysctl.c | 3 ++-
    2 files changed, 3 insertions(+), 2 deletions(-)

    diff --git a/Documentation/admin-guide/sysctl/vm.rst b/Documentation/admin-guide/sysctl/vm.rst
    index 5e795202111f..f4804ce37c58 100644
    --- a/Documentation/admin-guide/sysctl/vm.rst
    +++ b/Documentation/admin-guide/sysctl/vm.rst
    @@ -948,7 +948,7 @@ how much memory needs to be free before kswapd goes back to sleep.

    The unit is in fractions of 10,000. The default value of 10 means the
    distances between watermarks are 0.1% of the available memory in the
    -node/system. The maximum value is 1000, or 10% of memory.
    +node/system. The maximum value is 3000, or 30% of memory.

    A high rate of threads entering direct reclaim (allocstall) or kswapd
    going to sleep prematurely (kswapd_low_wmark_hit_quickly) can indicate
    diff --git a/kernel/sysctl.c b/kernel/sysctl.c
    index 25c18b2df684..347a90a878b3 100644
    --- a/kernel/sysctl.c
    +++ b/kernel/sysctl.c
    @@ -122,6 +122,7 @@ static unsigned long long_max = LONG_MAX;
    static int one_hundred = 100;
    static int two_hundred = 200;
    static int one_thousand = 1000;
    +static int three_thousand = 3000;
    #ifdef CONFIG_PRINTK
    static int ten_thousand = 10000;
    #endif
    @@ -2971,7 +2972,7 @@ static struct ctl_table vm_table[] = {
    .mode = 0644,
    .proc_handler = watermark_scale_factor_sysctl_handler,
    .extra1 = SYSCTL_ONE,
    - .extra2 = &one_thousand,
    + .extra2 = &three_thousand,
    },
    {
    .procname = "percpu_pagelist_high_fraction",
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-07-27 19:08    [W:4.091 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site