lkml.org 
[lkml]   [2010]   [Nov]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 10/13] writeback: make reasonable gap between the dirty/background thresholds
    The change is virtually a no-op for the majority users that use the
    default 10/20 background/dirty ratios. For others don't know why they
    are setting background ratio close enough to dirty ratio. Someone must
    set background ratio equal to dirty ratio, but no one seems to notice or
    complain that it's then silently halved under the hood..

    Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
    ---
    mm/page-writeback.c | 11 +++++++++--
    1 file changed, 9 insertions(+), 2 deletions(-)

    --- linux-next.orig/mm/page-writeback.c 2010-11-15 13:12:50.000000000 +0800
    +++ linux-next/mm/page-writeback.c 2010-11-15 13:13:42.000000000 +0800
    @@ -403,8 +403,15 @@ void global_dirty_limits(unsigned long *
    else
    background = (dirty_background_ratio * available_memory) / 100;

    - if (background >= dirty)
    - background = dirty / 2;
    + /*
    + * Ensure at least 1/4 gap between background and dirty thresholds, so
    + * that when dirty throttling starts at (background + dirty)/2, it's at
    + * the entrance of bdi soft throttle threshold, so as to avoid being
    + * hard throttled.
    + */
    + if (background > dirty - dirty * 2 / BDI_SOFT_DIRTY_LIMIT)
    + background = dirty - dirty * 2 / BDI_SOFT_DIRTY_LIMIT;
    +
    tsk = current;
    if (tsk->flags & PF_LESS_THROTTLE || rt_task(tsk)) {
    background += background / 4;



    \
     
     \ /
      Last update: 2010-11-17 05:35    [W:0.022 / U:2.064 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site