lkml.org 
[lkml]   [2011]   [May]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 2/2] Filter unevictable page out in deactivate_page
    Date
    It's pointless that deactive_page's pagevec operation about
    unevictable page as it's nop.
    This patch removes unnecessary overhead which might be a bit problem
    in case that there are many unevictable page in system(ex, mprotect workload)

    Signed-off-by: Minchan Kim <minchan.kim@gmail.com>
    ---
    mm/swap.c | 9 +++++++++
    1 files changed, 9 insertions(+), 0 deletions(-)

    diff --git a/mm/swap.c b/mm/swap.c
    index 2e9656d..b707694 100644
    --- a/mm/swap.c
    +++ b/mm/swap.c
    @@ -511,6 +511,15 @@ static void drain_cpu_pagevecs(int cpu)
    */
    void deactivate_page(struct page *page)
    {
    +
    + /*
    + * In workload which system has many unevictable page(ex, mprotect),
    + * unevictalge page deactivation for accelerating reclaim
    + * is pointless.
    + */
    + if (PageUnevictable(page))
    + return;
    +
    if (likely(get_page_unless_zero(page))) {
    struct pagevec *pvec = &get_cpu_var(lru_deactivate_pvecs);

    --
    1.7.1


    \
     
     \ /
      Last update: 2011-05-01 17:07    [W:0.020 / U:92.448 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site