lkml.org 
[lkml]   [2014]   [Jan]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] swap: do not skip lowest_bit in scan_swap_map() scan loop
    Date
    In the second half of scan_swap_map()'s scan loop, offset is set to
    si->lowest_bit and then incremented before entering the loop for the
    first time, causing si->swap_map[si->lowest_bit] to be skipped.

    Signed-off-by: Jamie Liu <jamieliu@google.com>
    ---
    mm/swapfile.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    diff --git a/mm/swapfile.c b/mm/swapfile.c
    index 612a7c9..6635081 100644
    --- a/mm/swapfile.c
    +++ b/mm/swapfile.c
    @@ -616,7 +616,7 @@ scan:
    }
    }
    offset = si->lowest_bit;
    - while (++offset < scan_base) {
    + while (offset < scan_base) {
    if (!si->swap_map[offset]) {
    spin_lock(&si->lock);
    goto checks;
    @@ -629,6 +629,7 @@ scan:
    cond_resched();
    latency_ration = LATENCY_LIMIT;
    }
    + offset++;
    }
    spin_lock(&si->lock);

    --
    1.8.5.3


    \
     
     \ /
      Last update: 2014-01-22 04:01    [W:4.361 / U:0.176 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site